一条语句执行跨越若干个数据库
生活随笔
收集整理的這篇文章主要介紹了
一条语句执行跨越若干个数据库
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我要在一條語句里操作不同的服務器上的不同的數據庫里的不同的表,怎么辦呢?
???? 第一種方法:
???? select * from OPENDATASOURCE('SQLOLEDB','Data Source=遠程ip;User ID=sa;Password=密碼').庫名.dbo.表名
???? 第二種方法:
???? 先使用聯結服務器:
???? 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.表名
???? go
???? 第一種方法:
???? select * from OPENDATASOURCE('SQLOLEDB','Data Source=遠程ip;User ID=sa;Password=密碼').庫名.dbo.表名
???? 第二種方法:
???? 先使用聯結服務器:
???? 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.表名
???? go
轉載于:https://www.cnblogs.com/pengxianwei/archive/2008/10/18/1313852.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的一条语句执行跨越若干个数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 标题栏外区域拖动窗体
- 下一篇: linux cmake编译源码,linu