錯誤「操作必須使用乙個可更新的查詢」原因及解決辦法
翻譯得比較匆忙,呵呵。
錯誤資訊:
microsoft ole db provider for odbc drivers error '80004005'
[microsoft][odbc microsoft access 97 driver] operation must use an
updateable query.
或者是:
microsoft jet database engine (0x80004005)
操作必須使用乙個可更新的查詢。
原因:有幾個主要的錯誤原因:
這個錯誤發生在當你的程式試圖執行更新資料庫或其它類似操作時。這是因為
ado由於以下的幾個原因而不能夠寫資料庫造成的。
1。最普遍的原因是匿名使用者帳號(iusr_machine)對該資料庫檔案沒有寫許可權。
要解決這個問題,在管理器中調整資料庫檔案的屬性,讓匿名使用者有正確的許可權。
當使用access資料庫時,
不僅要給檔案寫的許可權,還要給該目錄寫入的許可權,因為
jet需要在該目錄建立乙個
.ldb檔案。
如下圖所示:
2。第二個原因是資料庫沒有使用正確的模式開啟。應該使用下面的方法開啟。
sql = "update products set unitprice = 2;"
set conn = server.createobject("adodb.connection")
conn.mode = 3 '3 = admodereadwrite
conn.open "mydsn"
conn.execute(sql)
conn.close
注意預設的mode是設定0(admodeunknown),它是允許更新的。
3。還有可能是在odbc管理器中將該dsn的唯讀選項選中。
4。你是在同時更新兩個表中的字段,也會出現這個錯誤資訊,解決辦法是分開來更新
這兩個表中各自字段。
5。當你使用了乙個從低版本中(如access2.0,access7.0)載入到高版本(access 2000)
中的查詢時,在執行這個查詢是會出現該錯誤。
操作必須使用乙個可更新的查詢
有幾個主要的錯誤原因 這個錯誤發生在當你的程式試圖執行更新資料庫或其它類似操作時。這是因為 ado由於以下的幾個原因而不能夠寫資料庫造成的。1。最普遍的原因是帳號 iusr machine 對該資料庫檔案沒有寫許可權。要解決這個問題,在管理器中調整資料庫檔案的屬性,讓有正確的許可權。當使用acces...
操作必須使用乙個可更新的查詢
今天用asp.net 2.0寫access資料庫的時候出現了乙個問題 操作必須使用乙個可更新的查詢。查詢了一下原因,原來使用者在請求web頁面時win2003伺服器使用系統內建的的iis wpg組的帳戶來訪問access資料庫,若iis wpg組的帳戶沒有access資料庫檔案的 修改 許可權,就會...
操作必須使用乙個可更新的查詢
錯誤 操作必須使用乙個可更新的查詢 原因及解決辦法 翻譯得比較匆忙,呵呵。錯誤資訊 microsoft ole db provider for odbc drivers error 80004005 microsoft odbc microsoft access 97 driver operatio...