--用openrowset連線遠端sql或插入資料
--如果只是臨時訪問,可以直接用openrowset
--查詢示例
select * from openrowset('sqloledb'
,'sql伺服器名';'使用者名稱';'密碼'
,資料庫名.dbo.表名)
在跨庫查詢時需要啟用ad hoc distributed queries
啟用ad hoc distributed queries:
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'ad hoc distributed queries',1
reconfigure
使用完成後,關閉ad hoc distributed queries:
exec sp_configure 'ad hoc distributed queries',0
reconfigure
exec sp_configure 'show advanced options',0
reconfigure
--匯入示例
select * into 表 from openrowset('sqloledb'
,'sql伺服器名';'使用者名稱';'密碼'
,資料庫名.dbo.表名)
--建立鏈結伺服器
exec sp_addlinkedserver 'srv_lnk','','sqloledb','遠端伺服器名或ip位址'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'使用者名稱','密碼'
go--查詢示例
select * from srv_lnk.資料庫名.dbo.表名
--匯入示例
select * into 表 from srv_lnk.資料庫名.dbo.表名
--以後不再使用時刪除鏈結伺服器
exec sp_dropserver 'srv_lnk','droplogins'
go--下面的示例訪問來自某個表的資料,該錶在 sql server 的另乙個例項中。
select *from opendatasource('sqloledb','data source=servername;user id=myuid;password=mypass').northwind.dbo.categories
--下面是個查詢的示例,它通過用於 jet 的 ole db 提供程式查詢 excel 電子**。
select *from opendatasource( 'microsoft.jet.oledb.4.0','data source="c:financeaccount.xls";user id=admin;password=;extended properties=excel 5.0')...xactions
複製**
SQL Server跨庫查詢
方式一 語句select from 資料庫a.dbo.表a a,資料庫b.dbo.表b b where a.field b.field dbo 可以省略 如 select from 資料庫a.表a a,資料庫b.表b b where a.field b.field 方式二 在乙個資料庫掛上另乙個資料...
sql server跨庫查詢
方式一 dbo可以省略 select from 資料庫a.dbo.表a a,資料庫b.dbo.表b b where a.field b.field 方式二 在乙個資料庫掛上另乙個資料庫的外鏈 對映乙個遠端資料庫 exec sp addlinkedserver 遠端資料庫的ip或主機名 n sql s...
sqlserver 跨庫查詢
select from opendatasource sqloledb data source 遠端ip user id sa password 密碼 庫名.dbo.表名 where 條件 解除sql阻止 sql server 阻止了對元件 adhocdistributedqueries 的 sta...