SQL Server 跨服务器 不同数据库之间复制表的数据

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_23944441/article/details/81314421

假设

目标服务器为:192.168.0.200

目标数据库为:dbname

目标数据库表名称为:tablename

 

1、相同服务器相同数据库

 目标表存在时:

    insert into 目标数据表名称 select * from 源数据表名称

 当目标表不存在时:

    select * into 目标数据表名称 from 源数据表名称

 

2、相同服务器不同数据库

目标表存在时:

    insert into 目标数据库.dbo.目标数据表名称 select * from 源数据库.dbo.表名称

 当目标表不存在时:

    select * into 目标数据库.dbo.目标数据表名称 from 源数据库.dbo.表名称

 

3、不同服务器不同数据库

创建连接

    exec sp_addlinkedserver   '服务器连接临时名称' , ' ' , 'SQLOLEDB', '192.168.0.200' 

    exec sp_addlinkedsrvlogin  '服务器连接临时名称' , 'false' , null , '用户名' , '密码' 

 

查询数据
    select * from 服务器连接临时名称.数据库名.dbo.表名


 导入示例 (将远程数据导入当前连接服务器)

    1.目标表存在时:

        insert into 当前连接服务器的数据库名.dbo.表名 select * from 服务器连接临时名称.数据库名.dbo.表名

    2.目标表不存在
        select * into 本地表名 from 服务器连接临时名称.数据库名.dbo.表名

 

以后不再使用时删除链接服务器 
    exec sp_dropserver  '服务器连接临时名称'' , ' droplogins ' 
 

 

 

 

参考:http://www.cnblogs.com/railgunman/archive/2010/12/25/1916780.html

阅读更多
换一批

没有更多推荐了,返回首页