ASP+MS Access常见错误信息及处理方法(转)-新注册新发好贴,asp新手必备

原文地址:
neural.cs.nthu.edu.tw/jang/courses/cs3431/student/accessErrorFaq_916718/
======================================
以ASP連結MS Access資料庫常見錯誤訊息彙整表
( ASP Microsoft Access Database Errors FAQ's )

======================================
錯誤代碼
無法更新資料庫


中文版: [Microsoft][ODBC Microsoft Access 驅動程式]無法更新. 資料庫或物件是唯讀的.

英文版:Cannot update. Database or object is read-only. Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access Driver] Cannot update. Database or object is read-only.

因為使用者嘗試新增或更新資料等動作,但卻沒有足夠權限時會出現的錯誤訊息.解決方法為修改資料表權限, ,另外也有可能是伺服器端的資料庫正開啟中,因此造成無法更新的狀況,需先把該資 料表關閉後,才能新增或更新資料.

設定方式如下:

1.點選Access資料表=>按右鍵選內容==>安全性選項(Security) =>
點選新增(add)按鈕
click for full size
2.然後將
IUSER 新增至允許名單中
click for full size
3.在屬性視窗中,勾選
允許讀 與 寫的權限,(全部勾選也可以) 如下所示,然後點選確定 完成設定.
click for full size
----------------------------------------------------------------------
錯誤代碼
參數太少

中文版:Microsoft OLE DB Provider for ODBC Drivers 錯誤 '80040e10' [Microsoft][ODBC Microsoft Access Driver] 參數太少,預期個數 1。

英文版:Microsoft OLE DB Provider for ODBC Drivers (0x80040E10) [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

此類型錯誤產生的原因在於SQL指令可能有錯誤.例如:SQL指令中的欄位名稱可能與實體資料表中的欄位 名稱不符,因此解決方式為重新檢查程式碼中的SQL條件運算式,是否有拼錯字等狀況.
----------------------------------------------------------------------
錯誤代碼
BOF EOF問題


中文版:ADODB.Field (0x800A0BCD) 可能是 BOF 或 EOF 的值為 True,或目前的記錄已被刪除。所要求的操作需要目前的記錄

英文版:ADODB.Recordset (0x800A0BCD) Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
此類型問題屬於資料集(recordset)的問題.這類問題發生的原因,一般是使用者送出了查詢條件,但送回的 結果卻是空的,即沒有符合查詢條件的資料.解決的方式為重先檢查查詢條件的設定與recordset的設定, 在傳回查詢條件時,確定不是一筆空的資料.
----------------------------------------------------------------------
錯誤代碼
運作必須使用更新查詢


中文版:Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 運作必須使用更新查詢

英文版:Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable query.

因為使用者嘗試新增或更新資料等動作,但卻沒有足夠權限時會出現的錯誤訊息.解決方法為修改資料表權限, 設定方式同上
----------------------------------------------------------------------
錯誤代碼
無法開啟登錄鍵


中文版:[Microsoft][ODBC Microsoft Access Driver]一般錯誤 無法開啟登錄鍵 'Temporary (volatile) Jet DSN for process 0x898 Thread 0x914 DBC 0x209e024 Jet'

英文版:Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x6cc Thread 0x78c DBC 0x144cfc4 Jet'.

這個問題可能有很多原因,最常見的情況為資料庫的路徑設定不正確,因此需要檢查檔案中資料庫路徑的設定 與實體目錄對印是否正確.另外,IIS的權限設定也會影響,需檢查該IUSER是否有存取權限,關於IUSER的權限設定 可參考範例
設定方式同上
----------------------------------------------------------------------
錯誤代碼
找不到檔案

英文版:Microsoft JET Database Engine (0x80004005) Could not find file 'C:/Inetpub/wwwroot/databaseName.mdb'.
此類型錯誤產生的原因在於資料表路徑的設定出錯,因此找不到asp檔案中所指定的相對應資料庫.解決 方式為重新檢查資料表的路徑設定是否正確.
----------------------------------------------------------------------
錯誤代碼
資料表被鎖定


Microsoft JET Database Engine error '80004005' Table 'tblTable' is exclusively locked by user 'Admin' on machine 'MyMachine'.

此類型錯誤產生的原因在於無法存取該資料表或是該資料表目前為'設計檢視"的狀態.解決方法將Access中 的設計檢視視窗關閉,確定資料表不是處於設計檢視狀態下即可.
----------------------------------------------------------------------
錯誤代碼
檔案正在使用中


Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access Driver] Could not use '(unknown)'; file already in use.

此類型錯誤產生的原因有可能因為資料庫的權限設定出錯,另外一原因則是MDAC (Microsoft Data Access Components )的版本有錯,請確認安裝的ODBC版本是4,0以上. 版本資訊可參考

ODBC的版本資訊
click for full size

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值