1.最常見的原因是匿名用戶帳戶(IUSR_MACHINE)對數據庫文件沒有寫權限。要解決此問題,請在管理器中調整數據庫文件的屬性,以便匿名用戶擁有正確的權限。在使用ACCESS數據庫時,不僅要給予寫文件的權限,還要給予寫目錄的權限,因為Jet需要創建壹個。目錄中的ldb文件。
2.第二個原因是數據庫沒有以正確的模式打開,應該以下面的方式打開。
SQL = "更新產品集單價= 2;"set conn = server . createobject(" adodb . connection ")conn . Mode = 3 ' 3 = admodereadwriteconn . open " mydsn " conn . execute(SQL)conn . close註意,默認模式設置為0(adModeUnknown),允許更新。
3.也可以在ODBC管理器中選擇該DSN的只讀選項。
4.即使兩個表中的字段同時更新,也會出現此錯誤信息。解決方案是分別更新兩個表中的字段。
5.當使用從較低版本(如ACCESS2.0、ACCESS7.0)加載到較高版本(ACCESS 2000)的查詢時,在執行此查詢時會出現此錯誤。
擴展數據:
結構化查詢語言是壹種高級的非過程化編程語言,它允許用戶在高級數據結構上工作。它不需要用戶指定數據的存儲方式,也不需要用戶知道數據的具體存儲方式,因此底層結構完全不同的不同數據庫系統可以使用相同的結構化查詢語言作為數據輸入和管理的接口。
1986 10,美國國家標準協會將SQL標準化後,成為關系數據庫管理系統的標準語言(ANSI X3。135-1986),並於1987年在國際標準組織的支持下成為國際標準。然而,各種流行的數據庫系統在實踐中對SQL規範做了壹些修改和擴展。