asp錯誤 '80040e21' 多步 OLE DB 操作產生錯誤
今天在做ASP保存數據到MSSQL時出現以下錯誤提示:
Microsoft OLE DB Provider for ODBC Drivers 錯誤 '80040e21' 多步 OLE DB 操作產生錯誤。請檢查每個 OLE DB 狀態值。沒有工作被完成。
后經檢查是數據類型不對,保存數據長度超過數據庫設置的字段長度.
以下是網上所找資料:
在向數據庫寫入數據的時候出現了類型不匹配、字段大小超出、鎖定模式錯誤等,或者記錄集沒有及時關閉。
例如,配置的某一字段長度為15,在sql語句中確試圖插入16位的字符;或者試圖插入全角半角模式不正確的字段;
或者使用了錯誤的記錄集鎖定方式,rs.open sql,conn,x,y,根據某些blog文章顯示,修改打開記錄集的方式可能會解決這個問題。
原來一直用的正常程序,突然報
Microsoft OLE DB Provider for ODBC Drivers 錯誤 '80040e21'
ODBC 驅動程序不支持所需的屬性。
查詢記錄少沒問題,記錄一多就報這個錯誤
清理了windows\Temp文件夾、inetpub\temp文件夾,還是不行
在網上一通亂搜
MicrosoftOLEDBProviderforODBCDrivers(0x80040E21)-->sql語句出錯(數據類型不匹配或表名(字段名)錯誤或表處于編輯狀態,或表不存在于conn打開的數據庫中)
最后發現把應用程序池標識改為LocalSystem就可以了,明顯是權限問題,把能想到的文件夾一通改終于好了。
友情提醒:應用程序池標識改為LocalSystem,非常不安全
相關文章: