数据库之间复制数据

本文介绍了在同一服务器和不同服务器间复制数据库数据的方法。对于同一服务器,使用INSERT INTO和SELECT...INTO语句实现数据迁移;不同服务器间,通过启用OPENROWSET或OPENDATASOURCE,结合sp_addlinkedserver和sp_addlinkedsrvlogin系统存储过程,实现远程数据的获取与插入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、同一个服务器上,不同数据库间复制数据

1.insert into database1.dbo.table1(col1,col2) select col1,col2 from database2.dbo.table2

这种复制数据要求table1和table2 同时存在于两个数据库中

2.select   *   into   database1.dbo.table1   from   database2.dbo.table2

当table1不存在时,可以通过这条语句完全复制table2的结构和数据到table1中。

二、不同服务器间复制数据

第一步、a.进行外围配置,如下图进入:

b.进入下面界面后,单击“功能的外围应用配置器”

 

 

 

c.再勾选“启用OPENROWSETOPENDATASOURCE支持”

 

 

第二步,Sql语句

--目的:从远程服务器(192.168.0.1)上的DataBase1数据库的

—Table1表中获取数据插入到本地的DataBaseLocal数据库表--User_Info

--第一种 运用openrowset

insert into DataBaseLocal.dbo.User_Info(DBLcol1,DBLcol2)

select DBcol1,DBcol2 from openrowset( 'SQLOLEDB ', '192.168.0.1 '; 'UserName'; UserPassword', DataBase1.dbo.Table1)

--第二种 运用opendatasource

insert into DataBaseLocal.dbo.User_Info(DBLcol1,DBLcol2)

SELECT   DBcol1,DBcol2  FROM   opendatasource( 'SQLOLEDB ',  'Data Source=192.168.0.1;User ID= UserName;Password= UserPassword '). DataBase1.dbo. Table1

 

 

 

 

 

另外说明一下,用于连接远程服务器的两个系统存储过程

1) sp_addlinkedserver –-用来映射一个远程数据库

2) sp_addlinkedsrvlogin –-用来登录一个远程数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值