May 1

在不同数据库之间复制数据效率高的方法 不指定

admin , 20:04 , 数据库 , 评论(0) , 引用(0) , 阅读(795) , Via 本站原创 | |
     今天碰到个问就是在不同数据库这间的表的数据的复制。嘿嘿,猪头我从来没有用过,所以在网上查了下,总结如下。shy
当表目标表存在时:
insert into 目的数据库..表 select * from 源数据库..表  
当目标表不存在时:
select * into 目的数据库..表 from 源数据库..表
--如果在不同的SQL之间:
insert into openrowset('sqloledb','目的服务器名';'sa';'',目的数据库.dbo.表)
select * from 源数据库..表

--或用链接服务器:
--创建链接服务器



--查询示例
select * from srv_lnk.数据库名.dbo.表名

--导入示例
select * into 表 from srv_lnk.数据库名.dbo.表名

go
--后删除链接服务器
exec sp_dropserver 'srv_lnk','droplogins'

--如果是将一个数据库中的数据全部复制到另一个数据库,而且两个库结构完全一样的话,就用备份/恢复的方式:

--将一个数据库完整复制成另一个数据库


最好的办法是用DTS(导入导出工具)做好DTS包。


--如果两个库的结构有些不同,就用:

/*--数据库数据复制

将一个数据库中的数据复制到另一个数据库
如果某列在目标数据库中为标识列,将不会被复制

适用范围:数据库结构发生了变化,想将旧数据库进行升级
这样就可以根据新的数据库结构创建一个空库,然后
将旧数据库的所有数据复制到新库中
--*/

--数据复制完成后启用约束



来源:Heck's Blog
地址:http://www.hecks.tk/post/10/
转载时须以链接形式注明作者和原始出处及本声明,否则将追究法律责任,谢谢配合!
Tags: