小编Jac*_*son的帖子

QSqlDatabase 看不到表

我已经创建了一个肯定存在于项目目录中的数据库,我可以使用 DBBrowser 和 Ubuntu 终端打开它。它们都显示数据库包含“电影”表,但我在 C++ 中的代码说找不到这样的表

QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("TestDatabase.db");

if(!db.open())
{
    qDebug() << db.lastError();
    qFatal("Failed to connect");
}

qDebug("Connected");

QSqlQuery query(db);


if(!query.exec("INSERT INTO movies (TITLE,RELEASE,STUDIO,DIRECTOR) VALUES ('Batman v Superman' , 2016 , 'WB', 'ZackSnyder');"))
{
    qDebug() << query.lastError();
}
else {
    qDebug("INSERTED!");
}
Run Code Online (Sandbox Code Playgroud)

输出

Connected
QSqlError("1", "Unable to execute statement", "no such table: movies")
Run Code Online (Sandbox Code Playgroud)

c++ sqlite qt

1
推荐指数
1
解决办法
661
查看次数

标签 统计

c++ ×1

qt ×1

sqlite ×1