1

我对 QT 很陌生,我一直在尝试在 QT 中连接我的 SQLite 数据库文件来读取我的程序的数据。但是在谷歌上度过了愉快的时光后,我只找到了三行

    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    db.setDatabaseName("D:\\Rahul DB files\\MobileDB.s3db");
    bool db_ok = db.open();

但我无法连接到数据库。如果连接所需的几个初始步骤将被注释,我将非常感激。谢谢你

4

2 回答 2

1

尝试:

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE","D:\\Rahul DB files\\MobileDB.s3db");
db.open()

好的,再解释一下。使用 addDatabase("QSQLITE") 打开默认的 sqlite 数据库连接。哪一个?Sqlite 没有服务器。任何任意文件都可以是 sqlite 数据库。使用 setDatabaseName 您只需重命名连接。从 QSqlDatabase 文档:

注意:数据库名称不是连接名称。连接名称必须在连接对象创建时传递给 addDatabase()。

于 2013-08-12T11:24:10.203 回答
1

检查您是否编译了 sqlite support static 或提供(相对于您的可执行文件)sqldrivers/qsqlite.dll。您最终需要编译必要的 sql-drivers。在http://qt-project.org/doc/qt-5.0/qtsql/sql-driver.html查看文档

于 2013-08-12T11:02:04.570 回答