日期:2014-05-18  浏览次数:20425 次

怎样备份数据库中的一张表为.bak
如题,我要选择数据库的一张表(该表和其他表没联系)里某年的数据,把这些数据插入一张新表,将其备份为bak形式,然后删掉原表里该年的数据以及新表的数据,同时还要实现恢复功能。有没有什么好办法啊?最好有代码说明啊。

------解决方案--------------------
select * into ta_bak from ta where ....
------解决方案--------------------
不需要备份出来.

SQL code
select * into 新表 from 旧表

------解决方案--------------------
SQL code
--插入数据
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 
法一:select * into b from a where 1 <>1 
法二:select top 0 * into b from a 

2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用) 
insert into b(a, b, c) select d,e,f from a;

------解决方案--------------------
To LZ:

你这个显然不能算是备份了,通常备份是指将原有的另存一份,而你这个实际上只是将所选择的转移或转存至另一处,不清楚你具体的应用是什么,我暂做如下推论:
1.备份:根据某种条件对所选数据进行备份,如日期
备份有N种方式可以解决,主要取决于需求。
例如,你可以建立一张存放备份的表,可以在同一个DB,也可以不同,备份时将原表符合条件的数据插入备份表,并删除原表的记录。
2.恢复:根据某种条件对所选数据进行恢复,如日期
基本与上面的方法类似,只是过程相反。

当然,如果数据量巨大的话,那么长期这样可能不妥,建议将数据按一定时限划分(月/季/年)存入不同表中,同时用一张表去记录存放的信息(时间区间,表名等等).具体情况可根据你的具体需求而定.