插入Ms Access数据库时出错(未指定的错误 对象无效或不再设置)

本文关键字:无效 对象 错误 不再 设置 未指定 Access Ms 数据库 出错 插入 | 更新日期: 2023-09-27 18:07:17

每次单击按钮时,我想插入大约2000条记录。它在记录511之前工作正常,并抛出这个异常:未指定错误'r'n对象无效或不再设置

我已经用不同的记录或不同的顺序调试了几次,并且总是在第511条记录上得到相同的错误。发生什么事情了?

代码:(我读取最后一条记录的ID,然后再插入另一条)

string CmdText = "SELECT TOP 1 Id FROM MyTable ORDER BY Id DESC";
OleDbCommand com = new OleDbCommand(CmdText,tran.Connection,tran);
com.CommandType = CommandType.Text;
OleDbDataReader reader = com.ExecuteReader(); //exception started here

插入Ms Access数据库时出错(未指定的错误
对象无效或不再设置)

听起来像是喷气发动机不能正常工作或已损坏。

当使用Microsoft ODBC Driver for Access或Microsoft OLE DB Provider for Jet打开和关闭连接或记录集时,可能会报告以下错误:

Object invalid or no longer set.

安装最新的Microsoft Jet 4.0 service pack 6解决此问题。修复:"对象无效或不再设置"错误与Microsoft Jet

我明白了。我必须关闭OleDBDataReader每次我想插入新记录。

现在它工作正常。谢谢。

解决这个问题的最好方法是删除在插入/更新时出现错误的表。然后重新创建表,但要确保首先备份表数据。