我正在编写一个带有后端数据库Access 2013的.Net应用程序 我使用OLEDB连接连接,一切正常工作
然后突然没有对代码,数据库,Office版本,OLDEB,操作系统做任何更改,我在尝试对特定表执行select查询时开始收到以下异常
异常
{0: [2, 8, 4], 3: [5]}
有趣的是,我仍然可以对具有相似结构(但不完全相同)和几乎相同数据大小的其他表执行相同的查询
I googled the exception并且很高兴知道它也突然发生在其他人身上 建议的根本原因之一是我的表中存在计算列,而不是
下面的代码将表名作为参数,并且与我的所有表完美地协同工作,除了一个没有太大区别并且几小时前已经工作的特定表。
The Microsoft Office Access database engine cannot read the data in MyTable.
The minimum required version to read the data is 14.0.0000.0000.
private void PupulateLookup(ComboBox control, string tableName, OleDbConnection conn)
{
BindingList<LookupObject> result = new BindingList<LookupObject>();
string sql = string.Format("SELECT * FROM [{0}]", tableName);
OleDbCommand cmd = new OleDbCommand(sql, conn);
OleDbDataReader reader;
reader = cmd.ExecuteReader();
while (reader.Read())
{
//do my stuff
}
reader.Close();
}
答案 0 :(得分:1)
我用不合逻辑的解决方案修复了它
出乎意料的是,它奏效了。