我想从Sql数据库中备份一张表的数据,然后把该表还原到另一个数据库中去,该如何做?

时间:2023-01-02 14:50:05
我想从Sql数据库中备份一张表的数据,然后把该表数据还原到另一个数据库中去,该如何做,请各位指点.

6 个解决方案

#1


insert into database2..table2 (field1,field2,field3...)
select field1,field2,field3... from database1..table1
字段名无所谓,只要一一对应就行
如果两表结构相同,可以:
insert into database2..table2 
select * from database1..table1

#2


回答楼上的
不过用户不原意啊

#3


我的方法可以么?

#4


服务器操作:
1.订阅和分发---虽然有点杀鸡用牛刀,但如果你的表比较多,或者有同步要求的话可以试试;
2.DTS利用sql的数据传输服务,多快好省,不用多说:)
3.用sql语句或者存储过程,自己利用查询集,例如:
create proc transdata (@db1 varchar(20),@table1 varchar(20),
@db2 varchar(20),
@table2 varchar(20),
as
exec('insert into ' + @db1 + '..' + @table1 +'
select * from ' + @db2+ '..' +@table2)
return

调用时:transdata 原数据库名,原表名,目的数据库,目的表名

或者客户端操作:
1.利用TBAtchMove,很方便,小数据量速度还可以;
2.自己写循环倒

#5


这么多办法,自己看吧:)

#1


insert into database2..table2 (field1,field2,field3...)
select field1,field2,field3... from database1..table1
字段名无所谓,只要一一对应就行
如果两表结构相同,可以:
insert into database2..table2 
select * from database1..table1

#2


回答楼上的
不过用户不原意啊

#3


我的方法可以么?

#4


服务器操作:
1.订阅和分发---虽然有点杀鸡用牛刀,但如果你的表比较多,或者有同步要求的话可以试试;
2.DTS利用sql的数据传输服务,多快好省,不用多说:)
3.用sql语句或者存储过程,自己利用查询集,例如:
create proc transdata (@db1 varchar(20),@table1 varchar(20),
@db2 varchar(20),
@table2 varchar(20),
as
exec('insert into ' + @db1 + '..' + @table1 +'
select * from ' + @db2+ '..' +@table2)
return

调用时:transdata 原数据库名,原表名,目的数据库,目的表名

或者客户端操作:
1.利用TBAtchMove,很方便,小数据量速度还可以;
2.自己写循环倒

#5


这么多办法,自己看吧:)