能不能在建表的时候,对于一个表table,建立另外一个跟它结构和字段完全一样的表table1,table用来插入新的数据,table1用来存储历史数据,这些历史数据由table中定期自动转移过来。
不知道这个想法能不能通过代码(触发器之类的能自动执行的)实现啊??还有这两个表是放在同一个数据库中,还是放在不同的数据库比较好呢,假如数据量大的话?

解决方案 »

  1.   

    select * into newtable from oldtable复制表结构和数据
    可以建立作业
      

  2.   

    再请教一下,建立作业对于pc机的系统和硬件配置有要求没,我现在用的是sql2000,电脑配置一般,os是2003的。因为将来可能要做一个项目,现在只是在我的破电脑上做前期试验。
      

  3.   

    完全可以啊。“table用来插入新的数据,table1用来存储历史数据,这些历史数据由table中定期自动转移过来。 ”可以使用job来完成,至于放一个数据库还是两个,放一个就行
      

  4.   

    作业对硬件没有特殊的要求,注意启动sql agent服务
      

  5.   

    我刚才已经启动agent了,我先去试试哈,等会过来再请教。
      

  6.   

    刚才试着自己编写了一个小作业,想转移数据,结果不成功。有表a和b,a中字段:f1,f2,f3,b中也一样。a中的数据是:
    f1    f2   f3
    1     2    3
    4     5    6
    7     8    9
    10    11   12
    我想实现把a中数据的前25%自动转移到b中,这个代码怎么编写啊?
      

  7.   


    啊?我看到书上说了一个top n percent的用法,不过没有试成功,所以问一下。
    主要就是想在数据存多的时候,按百分比来腾出一些数据,以便新数据能够存进来。其他的条件,我看只能用时间字段来做了,就是很多高手给我建议过的,用agent做一个作业,利用表中的时间字段来定期转移数据。但是我试验半天了,都没有做成功。
      

  8.   

    就用时间字段,写JOB,每天在TABLE中删除超过X天的数据,然后再TABLE1中插入这些数据
      

  9.   

    谢谢各位大侠,我已经明白了,刚才用job做了一个小实验,成功了,剩下的事情就是编写数据转移代码了。我自己研究研究先。