我正在使用 OleDbConnection、OldDbCommand 和 OleDbReader 与 Access 数据库交互。
我在数据库中有一个命名查询,我正在从代码中调用它。
当从access中运行时,查询可以正确地工作。
一些资源表明,错误可能是由于在查询中使用了保留字并需要用括号括起来。我没有使用任何保留字,但已经将所有列名都用括号括起来以排除这个问题。
为了确定问题出在哪里,我已将查询简化为一个简单的
SELECT id FROM table1 WHERE id = 5
其中Ole连接不会抛出异常。
当我介绍查询的下一部分时:
SELECT table1.id FROM table1 INNER JOIN storedQuery ON table1.id = storedQuery.id WHERE table1.id = 5"
然后我收到异常。
异常详情如下:
- 消息:IErrorInfo.GetDescription 失败,错误代码为 E_FAIL(0x80004005)。
- 错误代码:-2147467259
- 本机错误:-533136361
- SQL状态码:3000