0

我正在尝试使用指向另一个数据库的数据链接来更新我的 SQL 数据库中的表。我在用:

update TestTable
 SET some_column1=table.ColumnName1@dataBaseLink,
   some_column2=table.ColumnName2@dataBaseLink,
   some_column3=table.ColumnName3@dataBaseLink,
   some_column4=table.ColumnName4@dataBaseLink,
   some_column5=table.ColumnName5@dataBaseLink        
  where some_column=database.SomeColumn@dataBaseLink;

我收到错误

Error report:
SQL Error: ORA-00904: "database"."Variable1": invalid identifier
00904. 00000 -  "%s: invalid identifier"
 *Cause:    
 *Action:

我知道我显然试图错误地访问我的数据库链接中的列......但我不确定如何修复和/或访问它。

我正在使用 SQL 开发人员。

谢谢

4

1 回答 1

2

尝试使用合并

MERGE INTO TestTable TGT
  USING (
         SELECT t.key, t.ColumnName1, t.ColumnName2, 
         t.ColumnName3, t.ColumnName4, t.ColumnName5
         from remotetable@dataBaseLink t
  ) SRC
  ON (TGT.KEY = SRC.KEY)
  WHEN MATCHED THEN
  UPDATE SET some_column1=src.ColumnName1,
   some_column2=src.ColumnName2,
   some_column3=src.ColumnName3,
   some_column4=src.ColumnName4,
   some_column5=src.ColumnName5 
于 2013-07-12T20:04:08.397 回答