Microsoft Access ODBC 驱动程序管理器函数序列错误

Posted

技术标签:

【中文标题】Microsoft Access ODBC 驱动程序管理器函数序列错误【英文标题】:Microsoft Access ODBC Driver Manager Function sequence error 【发布时间】:2019-03-28 21:07:37 【问题描述】:

我正在尝试使用 Qt 通过 QSqlQuery 查询 MS Access 数据库中的表。我能够查询所有表,除了一个。一表返回错误:

[Microsoft][ODBC Driver Manager] Function sequence error

这是我用来查询表格的代码。

QSqlQueryModel *tempModel = new QSqlQueryModel();
QSqlQuery *qry = new QSqlQuery();
qry->prepare("SELECT * FROM table_name;");
qry->exec();

tempModel->setQuery(*qry);

while(tempModel->canFetchMore())

    tempModel->fetchMore();

我已经尝试过这个 SO question 的答案,但没有改变。 QSqlQuery causing ODBC Function sequence error

【问题讨论】:

【参考方案1】:

我也遇到了与 mysql 后端的 DAO 连接器的问题。我的直通查询正常工作,但尝试使用 DAO 从表中读取时收到 ODBC 函数序列错误。记录集连接器很好 - move.first、move.last、记录计数、计算字段名称没有问题。尝试读取记录数据时程序失败 - 但同样,我的直通查询没有发生问题。

问题很容易解决。更改表架构后,我忘记刷新我的 ODBC 链接。刷新了链接..现在一切正常了。

为了简化我的生活,我添加了一个程序链接供最终用户自动刷新 ODBC 链接。

【讨论】:

【参考方案2】:

问题似乎与其中一列的日期/时间数据类型有关。

我的一个专栏的数据类型为“日期/时间”,其“IME 句子模式”属性设置为“短语预测”。

将其从“短语预测”更改为“无”允许我从我的 Qt 应用程序查询 MS Access 表。

【讨论】:

以上是关于Microsoft Access ODBC 驱动程序管理器函数序列错误的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft Access ODBC 驱动程序管理器函数序列错误

JSP - Microsoft ODBC - Microsoft Access 驱动程序找不到文件“(未知)”

找不到Microsoft Access Driver(*.mdb)ODBC驱动程序的安装例程。请重新安装驱动(转)

SQL STATE 37000 [Microsoft] [ODBC Microsoft Access驱动程序]语法错误或访问冲突

带参数的 PypyODBC:[ODBC Microsoft Access 驱动程序] 参数太少。预期 3(不是日期问题)

无法加载 Driver do Microsoft Access (*.mdb) ODBC 驱动程序的安装例程,因为存在系统错误代码