如何在Qt中使用M.S访问?

2024-03-13

我想在我的项目中使用access数据库,这是我的代码:

#include <QCoreApplication>
#include <QtSql/QSqlDatabase>
#include <QDebug>
#include <QStringList>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QSqlDatabase m_db = QSqlDatabase::addDatabase("QODBC");
    m_db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=c:\\db.mdb;");
     bool  ok = m_db.open();
    if(ok)
        qDebug()<<"ok";
    else
        qDebug()<<"not ok";
    return a.exec();
}

当我运行它时,它显示 mt ‘not ok’ 我想我使用了错误的连接,因为 QODBC 驱动程序可用, 另一个问题是“db.mdb”文件必须位于哪里?在调试文件夹中或者它必须附加到项目中以及连接字符串应如何更改?


如果您需要使用 Qt 连接到 MS Access 数据库,通常您不需要安装任何有关驱动程序的内容。但如果您没有必要的驱动程序,您应该自己构建它。

您可以使用如下方式连接到 MS Access 数据库:

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Access Driver (*.mdb, *.accdb)};DSN='';DBQ=C:\\path\\to\\myDB.mdb");

if(db.open())
  qDebug() << "oK";
else
  qDebug() << db.lastError().text();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Qt中使用M.S访问? 的相关文章

随机推荐