QSql数据库并连接到 .sqlite 文件
QSqlDatabase and connecting to .sqlite file
当我尝试连接到与exe位于同一文件夹中的数据库文件时,发生了一些奇怪的事情。不显示错误消息,并且未加载数据库中的数据。
sdb = QSqlDatabase::addDatabase("QSQLITE");
sdb.setDatabaseName("lang.sqlite");
if (!sdb.open())
{
qDebug() << sdb.lastError().text();
QMessageBox msgBox;
msgBox.setIcon(QMessageBox::Critical);
msgBox.setText(sdb.lastError().text());
msgBox.setStandardButtons(QMessageBox::Ok);
msgBox.exec();
}
但是如果我将数据库移动到另一个文件夹 - 一切正常。
sdb = QSqlDatabase::addDatabase("QSQLITE");
sdb.setDatabaseName("db\lang.sqlite");
if (!sdb.open())
{
qDebug() << sdb.lastError().text();
QMessageBox msgBox;
msgBox.setIcon(QMessageBox::Critical);
msgBox.setText(sdb.lastError().text());
msgBox.setStandardButtons(QMessageBox::Ok);
msgBox.exec();
}
有什么想法吗?
试试这个:
sdb.setDatabaseName(qApp->applicationDirPath()
+ QDir::separator()
+ "lang.sqlite" );
相关文章:
- QT QML:使用.qrc文件将SQLite数据库部署到Android不起作用
- 如何将SQLite c文件(合并)与cpp应用程序链接?
- 如何确定 SQLite 文件在 QML LocalStorage 中的存储位置
- 在这种情况下,将数据存储在诸如SQLite之类的数据库中,还是存储在平面文本文件中更好
- C++SQLite在C接口中导入整个CSV文件
- SQLite是否可以完成此任务?存储路径名与文件属性
- 无法执行 sqlite SQL 文件来创建数据库
- C++和 Sqlite DELETE 查询实际上不会从数据库文件中删除该值
- SQLite 通过 C++ 打开多个 SQLite 文件
- QSql数据库并连接到 .sqlite 文件
- 将 MySQL 表存储到文件 (sqlite?)
- SQLite:在 WAL 模式下持久化文件句柄
- 使用 Visual Studio 编译 SQLite C++ 2013 抛出 .c 文件的错误
- C++:关闭后不能删除 sqlite 文件
- 设置SQLite数据库文件的版本
- Sqlite将数据库保存/加载到文件流中
- 其中是存储在ODBC++示例中的sqlite数据库文件
- SQLite,iCloud,也许还有Core Data——用于存储文件并与所有用户的设备共享?
- Android NDK不能交叉编译SQLite - crtend_so.0:没有这样的文件或目录
- 从Cocos2dx的指针char向量写入sqlite文件