1. 程式人生 > >Access資料庫“操作必須使用一個可更新的查詢”

Access資料庫“操作必須使用一個可更新的查詢”

今天又遇到這樣一個錯誤“操作必須使用一個可更新的查詢”這裡我整理下原因及解決辦法,大家以後再遇到相同的問題可以先試下類似的解決辦法.

網上百度了很多,都沒有什麼作用,大多都是說許可權問題,改的也都很麻煩,最後還是沒有解決,下面具體說下我的情況:

表A中有欄位id、roomnum、username

表B中有欄位id、remark、username

現在表A的欄位room都是空的,需要根據表A中的username到表B中查詢remark,然後更新到表A中(前提沒有重名使用者)

使用常規update語句為:

update A as t1 set t1.roomnum = (select max(username) from B as t2 where t2.username = t1.username)

而這條SQL語句在Access資料庫中不允許,出現提示“操作必須使用一個可更新的查詢

於是想到了,另一種更新語句,如下:

UPDATE A as t1, (SELECT username,remarkFROM B)  as t1 SET t1.roomnum = t2.remark
WHERE t1.username = t2.username;

問題得到解決 ^_^