SQL Server 2005中如何跨庫查詢資料

2021-09-30 06:40:34 字數 2706 閱讀 3077

由於業務邏輯的多樣性

經常得在sql server中查詢不同資料庫中資料

這就產生了分布式查詢的需求

現我將開發中遇到的幾種查詢總結如下:

1.access版本

--建立連線伺服器

exec sp_addlinkedserver

--要建立的鏈結伺服器名稱

'ai',           

--產品名稱             

'access',   

--ole db 字元

'microsoft.jet.oledb.4.0',

--資料來源

--格式:

-- 碟符:/路徑/檔名

-- //網路名/共享名/檔名  (網路版本)

'd:/testdb/db.mdb'

go--建立鏈結伺服器上遠端登入之間的對映

--鏈結伺服器預設設定為用登陸的上下文進行

--現在我們修改為連線鏈結伺服器不需使用任何登入或密碼

exec sp_addlinkedsrvlogin 'ai','false'

go--查詢資料

select * from ai...mytable

go2.excel版本

--建立連線伺服器

exec sp_addlinkedserver

--要建立的鏈結伺服器名稱

'ai_ex',           

--產品名稱             

'ex',   

--ole db 字元

'microsoft.jet.oledb.4.0',

--資料來源

--格式:

-- 碟符:/路徑/檔名

-- //網路名/共享名/檔名  (網路版本)

'd:/testdb/mybook.xls' ,

null,

--ole db 提供程式特定的連線字串

'excel 5.0'

go----建立鏈結伺服器上遠端登入之間的對映

--鏈結伺服器預設設定為用登陸的上下文進行

--現在我們修改為連線鏈結伺服器不需使用任何登入或密碼

exec sp_addlinkedsrvlogin 'ai_ex','false'

go--查詢資料

select * from ai_ex...sheet3$

go3.ms sql版本

--建立連線伺服器

exec sp_addlinkedserver

--要建立的鏈結伺服器名稱

'ai_mssql',           

--產品名稱             

'ms',   

--ole db 字元

'sqloledb',

--資料來源

'218.204.111.111,3342'

go--建立鏈結伺服器上遠端登入之間的對映

exec sp_addlinkedsrvlogin

'ai_mssql',

'false',

null,

--遠端伺服器的登陸使用者名稱

'zhangzhe',

--遠端伺服器的登陸密碼

'fish2231'

go--查詢資料

select * from ai_mssql.pubs.dbo.jobs

go--還有乙個更簡單的辦法

--這種方式在鏈結伺服器建立後,它是預設開放rpc的

--建立連線伺服器

exec sp_addlinkedserver

--要建立的鏈結伺服器名稱

--這裡就用資料來源作名稱

'218.204.111.111,3342',

'sql server'

go--建立鏈結伺服器上遠端登入之間的對映

exec sp_addlinkedsrvlogin

'218.204.111.111,3342',

'false',

null,

--遠端伺服器的登陸使用者名稱

'zhangzhe',

--遠端伺服器的登陸密碼

'fish2231'

go--查詢資料

select * from [218.204.253.131,3342].pubs.dbo.jobs

go4.oracle版本

--建立連線伺服器

exec sp_addlinkedserver

--要建立的鏈結伺服器名稱

'o',

--產品名稱             

'oracle',

--ole db 字元

'msdaora',

--資料來源

'acc'

go--建立鏈結伺服器上遠端登入之間的對映

exec sp_addlinkedsrvlogin

'o',

'false',

null,

--oracle伺服器的登陸使用者名稱

'f02m185',

--oracle伺服器的登陸密碼

'f02m185185'

go--查詢資料

--格式:linkserver..oracle使用者名稱.表名

--注意用大寫,因為在oracle的資料字典中為大寫

select * from o..f02m185.ai

go

sql server 2005中的output子句

今天看了下sql server 2005中的output子句,以使您可以從修改語句 insert update delete 中將資料返回到表變數中。帶結果的 dml 的有用方案包括清除和存檔 訊息處理應用程式以及其他方案。這一新的 output 子句的語法為 output into table v...

With在sql server 2005中的用法

with在msdn中的講解,可以參考鏈結 1 2 建立錶值變數型別 3 4create type ty newareagoods as table 5 areaid int notnull,6 goodsid int notnull 7 8 9 創鍵返回今天 的資料 10 根據有 的地區獲取參 11...

sql server 2005中的output子句

今天看了下sql server 2005中的output子句,以使您可以從修改語句 insert update delete 中將資料返回到表變數中。帶結果的 dml 的有用方案包括清除和存檔 訊息處理應用程式以及其他方案。這一新的 output 子句的語法為 output into table v...