我正在尝试将SOPNUMBE
中的Database2
输入Invoice Number
中的Database1
。没有什么花哨但我一直在撞墙。即使它是一本可读的书,任何方向都会很棒。
Update Database1
Set Database1.dbo.TableA.[Invoice Number] = Database2.dbo.TableA.SOPNUMBE
Where Database1.dbo.TableA.[SO Number] = Database2.dbo.TableA.ORIGNUMB
出现此错误:
Msg 4104,Level 16,State 1,Procedure UpdateInvoice,Line 18 [Batch 开始第7行] 多部分标识符" Database2.dbo.TableA.ORIGNUMB"不可能 界。
答案 0 :(得分:2)
试试这个 - 我重新创建了你的情况,这个查询对我有用。
Update Database1.dbo.TableA
SET [Invoice Number] = b.SOPNUMBE
FROM Database1.dbo.TableA a
INNER JOIN Database2.dbo.TableA b ON a.[SO Number] = b.ORIGNUMB
两件事 - 一件事,你在FROM子句或JOIN子句中没有Database2.dbo.TableA - 这就是它无法绑定的原因。第二,你的UPDATE行 - "更新Database1"没有资格对表格进行更新,但我认为这是一个错字。