2015-04-26 39 views
2

我返回一個打開的查詢以更新Oracle中的表數據。我可以在openquery中使用條件(CARD_NUMBER = tb3.cardno)嗎?以下是我的查詢:更新Oracle鏈接服務器的打開查詢

update openquery(link,'select FORACID,CARD_TYPE,CARD_NUMBER 
         from sibatmbank 
         where CARD_NUMBER=tb3.cardno') set 
FORACID=tb2.Predefined_AccNo,CARD_TYPE=tb3.CardType 
from EXT1 tb2,Complex1 tb3 
where tb2.InstId=tb3.name 
and 
tb2.InstId in ('119') 

回答

0

不,你不能。

相反,您可以通過調用鏈接表「link..sibatmbank」來更改鏈接表中的數據。 類似於:

update link..sibatmbank s 
set 
    s.FORACID=tb2.Predefined_AccNo, 
    s.CARD_TYPE=tb3.CardType 
from 
    EXT1 tb2, 
    Complex1 tb3 
where 
    s.CARD_NUMBER=tb3.cardno 
    and tb2.InstId=tb3.name 
    and tb2.InstId in ('119')