SQL 中OPENQUERY的使用


OpenQuery 是SQL Server用來與其他Server交互的一種技術,通過OpenQuery,SQL Server 可以直接訪問其他數據庫資源。

而其他數據庫在OpenQuery 表達式中是以Linked Server 存在的。 使用sp_linkedservers 可以找到當前數據庫的所有linked server.

例如在sql server 2008數據庫中通過鏈接服務器想訪問sql server 2000 的數據庫就必須使用OpenQuery了。

OpenQuery的表達式可以這么寫:

Select * from OpenQuery([linkedServerName],'Select * from t1 where id < 10')

而且值得注意的是,如果,你要在OpenQuery中執行如下的數據庫語句,

Select * from t1 Where Name = 'ida'

'ida' 必須以雙引號的形式傳人,如下,

Select * from OpenQuery([linkedServerName],'Select * from t1 where name= ''ida''')
如果是要寫入數據到另外的數據庫呢?格式如下:
insert into openquery([linkedServerName],
'select id,name,....
 from [dbname].dbo.tbname where 1=0')  
select 
id,name,...
from t2 
where ...
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM