簡體   English   中英

未從鏈接服務器(Oracle 數據庫)獲取 SQL 值

[英]Not getting SQL values from Linked Server (Oracle Database)

我有一個 Oracle 數據庫,它鏈接到 Microsoft SQL 服務器,所以我可以直接從 Z9778840A0100CB30C982Z876741B0B5 服務器管理服務器從數據庫中查詢服務器和假脫機信息而無需擔心。 現在我想通過 SQL 查詢從鏈接服務器獲取信息並顯示數據庫中的值。

所以當我這樣做時

select * from openquery(LinkServerName,'select * from table_name')

這100%有效,沒有錯誤。

現在當我運行這樣的東西時

select * from openquery(LinkServerName,'select foracid,acct_name,acct_crncy_code,clr_bal_amt from table_name where bacid='1010000001' and sol_id='XXX'')

其中 bacid 和 sol_id 都是作為列的字符串,我得到這個返回錯誤:

消息 102,第 15 級,State 1,第 5 行
'1010000001' 附近的語法不正確。

請問我似乎缺少什么?

select *
from openquery(LinkServerName,'select foracid,acct_name,acct_crncy_code,clr_bal_amt from table_name where bacid=''1010000001'' and sol_id=''XXX'' ')

應該工作,'需要被''(兩個')轉義。

基於評論的更正(在這種情況下轉義有點奇怪):

select *
from openquery(LinkServerName,'select 
foracid,acct_name,acct_crncy_code,clr_bal_amt from table_name where 
bacid=""1010000001"" and sol_id=""XXX"" ')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM