access里的多步oledb错误_多步 OLE DB 操作产生错误,这问题怎么解决啊

在调试Access数据库程序时,遇到'多步 OLE DB 操作产生错误'的问题,错误发生在尝试使用RS.AddNew添加记录时,即使在空表上也会出现。代码在编辑记录时正常运行,而在其他表上添加记录则没有问题。已排除字段属性、大小不匹配和非法记录原因。寻求解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

相信大家在调试程序时曾碰到过下面错误

数据库:ACCESS

-------------------------------------------------------------------

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e21'

多步 OLE DB 操作产生错误。请检查每个 OLE DB 状态值。没有工作被完成。

/*****/*****/addph.asp,行47

行47指向rs.addnew这句

我的代码(添加一条记录)老是出现上面错误(空表也出错),代码如下:

'添加记录

if request("action")="save" then

hw_id=request("hw_id")   ' (这个不是索引哦,索引是ph_id)

ph_net=request("ph_net")

ph_freq=request("ph_freq")

'......(中间省略)

sql="select * from phone"

rs.open sql,conn,3,3

rs.addnew         '行47,即系统提示出错这句

rs("ph_net")=ph_net

rs("ph_freq")=ph_freq

rs("ph_www")=ph_www

'......(此处省略)

rs.update

response.write "商品基本功能参数添加成功"

'.....

而同一段代码用于编辑一条记录(如下)又没问题

'编辑记录

if request("action")="save" then

hw_id=request("hw_id")

ph_net=request("ph_net")

ph_freq=request("ph_freq")

'......(中间省略)

sql="select * from phone where id="&int("ph_id")&"

rs.open sql,conn,3,3

rs("ph_net")=ph_net

rs("ph_freq")=ph_freq

'......(此处省略)

rs.update

response.write "商品基本功能参数编辑成功"

更离谱是我用同样方法对其他表添加记录又可以.由于可以编辑记录,应该可以排除字段属性或大小不匹配的原因,也排除了表中有非法记录的原因,因为我用空表试了也不行,用BAIDU和GOOGLE搜索这类错误,一大把同病相怜的,但发现ACCESS数据库出现这类错误很少有人讨论,天那,哪位大虾给我指条明路啊,我都快疯了.

作者: hetick

发布时间: 2004-07-08

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值