2012-11-20 74 views
1

出於某種原因,以下查詢在sqlite中返回以下錯誤消息。我通常使用交叉表連接,但因爲這是不可能的更新在sqlite這是一個子查詢,而不是。這可能是一個疲憊的眼睛,但我似乎無法看到這個問題。任何幫助表示讚賞。sqlite交叉表更新令人沮喪的錯誤

附近「。」 :語法錯誤

UPDATE 
    tbl1 
    set tbl1.[some_field1] = (SELECT tbl2.[some_fieldA]||substr(tbl2.[some_fieldB],1,2)  
           FROM tbl2 
           WHERE tbl2.[some_fieldC] = tbl1.[some_field2]) 
    WHERE 
    tbl1.[file_name] = "some_arbitrary_file.txt" 
    AND tbl1.[some_field1] IS NULL 
    OR tbl1.[some_field1] = ""; 

回答

1

UPDATE命令只處理一個表,所以這是從來沒有必要指定表中要更新的列。 在SET刪除該tbl1.

... SET [some_field1] = ... 
+0

啊,我的上帝,我知道它是簡單的東西是這樣的。太感謝了。由於表名是正確的,解釋器不能確定它似乎令人驚訝。然後,我確信他們有他們的理由。祝一切順利。 – jiraiya

相關問題