SQL 中OPENQUERY的使用

2021-09-06 19:49:02 字數 886 閱讀 2590

原文:

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 ...

SQL 在OPENQUERY中使用引數

openquery 是sql server用來與其他server互動的一種技術,通過openquery,sql server 可以直接訪問其他資料庫資源。而其他資料庫在openquery 表示式中是以linked server 存在的。使用sp linkedservers 可以找到當前資料庫的所有l...

SQL 使用openquery進行跨庫操作

摘自 對給定的鏈結伺服器執行指定的傳遞查詢。該伺服器是 ole db 資料來源。openquery 可以在查詢的 from 子句中引用,就好象它是乙個表名。openquery 也可以作為 insert update 或 delete 語句的目標表進行引用。但這要取決於 ole db 訪問介面的功能。...

SQL防注入SqlParameter的使用

概述 一般來說,在更新datatable 或是dataset 時,如果不採用 sqlparameter 那麼當輸入的 sql語句出現歧義時,如字串中含有單引號,程式就會發生錯誤,並且他人可以輕易地通過拼接 sql語句來進行注入攻擊。目的 防止sql 注入被攻擊。首先,先寫乙個沒有 sqlparame...