ODBC 驱动程序在 Qt 中的使用

Posted

技术标签:

【中文标题】ODBC 驱动程序在 Qt 中的使用【英文标题】:ODBC driver use in Qt 【发布时间】:2010-10-29 10:57:30 【问题描述】:

我想使用读写mdb 文件(Ms Access 文件),而我对在Qt 中使用ODBC 完全陌生。

那么任何人都可以帮助我知道我是否需要下载驱动程序,如果需要,那么我可以从哪里下载?如果您了解连接性,那么任何帮助都会得到帮助。

【问题讨论】:

这里说的是odbc,不是java/jdbc。删除java标签:) 【参考方案1】:

如果您需要使用 Qt 访问 MS Access 数据库,则不需要(如果我没记错的话)安装任何有关驱动程序的东西(一切都应该已经存在)。

您可以使用连接字符串连接到数据库。像这样:

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver=Microsoft Access Driver (*.mdb, *.accdb);DSN='';DBQ=C:\\path\\to\\mydatabase.mdb");
bool Success = db.open();

【讨论】:

但是,您将需要 ODBC 驱动程序来执行此操作。它们可能需要构建。【参考方案2】:

我遇到了同样的问题。

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC","AccessDB");
db.setDatabaseName("DRIVER=Microsoft Access Driver (*.mdb);FIL=MS Access;DBQ=C:/path/to/Database.mdb");
bool success = db.open();

为我工作。

【讨论】:

以上是关于ODBC 驱动程序在 Qt 中的使用的主要内容,如果未能解决你的问题,请参考以下文章

Qt从excel导入数据-ODBC

使用静态 QT odbc 时如何解决链接问题

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

QT5.6.0+VS2015编译MQSQL(ACCESS)X64数据库驱动

如何用qt对sqlserver数据库

在 PHP 中通过 ODBC(使用 PDO)查询雪花返回不正确的数据