sql server作为我的系统的后台数据库,通过与组态软件实时通信而把数据以分钟一次的间隔读取并存到数据库中,由于每一次存储的数据量很大,而且读取间隔又小,所以相信时间不久,数据库中的数据量就大得惊人。
我想问的是:采取什么好的办法,可以在每隔一段时间就把旧数据移开并存为历史数据(这部分数据有用,不能删除,用来作报表,打印和分析),而在移动数据过程中,不影响新的数据的存储,且这个过程中系统是运行着的。
SQL Server 2000里面按数据时间放到不同的表里。
SQL Server 2005里面可以按时间设置数据分区。
或者,分成当前表和历史表,再做一个定期计划,定时转移数据。
存放数据时按天(亦可按月具体看数据量大到什么程度)建表例如2009年6月1日的数据存放在表data_20090601中,依次类推,使用数据时,可以用sql语句union多个表中的记录来使用