sql中兩台伺服器間使用連接配接伺服器
exec opendatasource(
'sqloledb',
'data source=遠端ip;user id=sa;password=密碼'
).庫名.dbo.存儲過程名
2:将資料插入另一伺服器上的表中
select * into 本地庫名..表名 from opendatasource(
).庫名.dbo.表名
insert 本地庫名..表名 select * from opendatasource(
或使用聯結伺服器:
exec sp_addlinkedserver '别名','','msdasql',null,null,'driver={sql server};server=遠端名;uid=使用者;pwd=密碼;'
exec sp_addlinkedsrvlogin @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密碼'
go
(請注意上面的兩步要同時運作)
然後你就可以如下:
select * from 别名.庫名.dbo.表名
insert 庫名.dbo.表名 select * from 别名.庫名.dbo.表名
select * into 庫名.dbo.新表名 from 别名.庫名.dbo.表名
3:如果在事務裡使用連接配接伺服器要加上分布式事務:
兩邊啟動dtc
set xact_abort on
set ansi_null_dflt_on on
set ansi_warnings on
begin distributed transaction
select * from opendatasource('msdasql','driver={sql server};server=ip;uid=sa;pwd=密碼;').pubs.dbo.jobs
commit tran