2014-12-26 90 views
0

我再次對訪問有個疑問。我正在將Access項目轉換爲SSIS項目。在查詢的分析過程中,我發現如下所示:在Access中更新表格

update A inner join B on A.Column1 = B.Column1 
and A.Column2 = B.Column2 
set A.column3 = B.column3 
A.column4 = B.column4... 
B.column# = B.column#; 

我的問題是關於最後一句。在同一張表的同一列(B.column#= B.column#)之間進行設置的目的是什麼?我的工作夥伴一直在執行這個查詢沒有任何問題,但是當我試圖把它翻譯成SQL時,我得到了一個錯誤消息:「...失敗,出現以下錯誤:」多部分標識符「B.column# 「無法綁定...」

回答

0

通過嘗試更新表B中的列,您嘗試使用單個更新語句更新2個表,並且無法在SQL中的一個語句中更新多個表,因此如果你需要更新A和B,你需要使用多個語句,可能在一個事務中,以確保兩個語句被視爲單個命令。有意義的更新表B中的一列,我認爲你會這樣做的唯一原因是,有一個trigg呃檢查哪些列正在更新