javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > asp 80040e21

asp错误 '80040e21' 多步 OLE DB 操作产生错误

作者:superes

今天在写asp入库操作的时候提示Microsoft OLE DB Provider for ODBC Drivers 错误 80040e21 多步 OLE DB 操作产生错误,请检查每个 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,非常不安全

阅读全文