关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表运行时错误的小结

时间:2019-05-12 04:43:43下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表运行时错误的小结》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表运行时错误的小结》。

第一篇:关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表运行时错误的小结

关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表产生实时错误'-2147217887(80040e21)'的小结

网上对于更新数据库表[运行时错误'-2147217887(80040e21)':多步操作产生错误。请检查每一步的状态值。或者:无法更新字段。]给出的几种解释:(1)字符串长度超过数据表预设限制;(2)数据类型不符;(3)无主键。还有一个是修改了游标类型解决问题的,但是我遇到的都不是这几种。

最近,为了维护单位的人事工资管理系统,需要将人员的学历信息先在一张Excel电子表中维护好,然后再在VBA中利用Recordset对象访问更新ACCESS数据表。由于先前的查询中为了避免“无效的NULL引用”,对查询字段都用iff(IsNull(),)来包裹。在后面的更新中,直接复制先前的语句来修改,保留了先前的iff(IsNull(),)包裹语句,这导致对Recordset查询结果的字段进行赋值以备更新时总是提示:

“运行时错误'-2147217887(80040e21)':多步操作产生错误。请检查每一步的状态值。”

头一天晚上在百度上查了一晚上也没有解决问题,排出字符串长度超过数据表预设限制,排出数据类型不符,也不是无主键的问题,„„第二天晚上再来:

这次,我改变了Recordset对象的打开方式,直接用Rse.Open SQL, cnn, adOpenStatic, adLockPessimistic打开要更新的结果集,提示依然在,但是有了改变:

“运行时错误'-2147217887(80040e21)':无法更新字段。”

错误代码还是一样的,就是释义变了,如图:

免不了又上百度搜索一番,但是也是无果而终,到底是什么原因呢?昨晚我曾把包裹“所学专业”字段的iff(IsNull(),)函数删除,但当时并未解决问题,今天,抱着试一试的想法,我把所有的iff(IsNull(),)包裹函数全部去除,„„,结果,通过!!

下载关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表运行时错误的小结word格式文档
下载关于在ExcelVBA中用Recordset对象访问更新ACCESS数据表运行时错误的小结.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐