创建数据库:
QSqlDatabase database;
database = QSqlDatabase::addDatabase("QSQLITE", CONNECTION_NAME);
database.setDatabaseName("D:\test.db"); //不指示路径的话,数据库不会生成到想去的地方
if (!database.open())
{
qDebug() << "Error: Failed to connect database." << database.lastError();
}
else
{
qDebug() << "Succeed to connect database.";
}
创建表:
auto _db = QSqlDatabase::database(CONNECTION_NAME);
QSqlQuery query(_db);
query.exec(QString("select count(*) from sqlite_master where type='table' and name='%1'").arg("tableName"));
if (query.next())
{
if (query.value(0).toInt() == 0)
{
// 表不存在
QSqlQuery _query(_db);
bool _ok = _query.exec("CREATE TABLE IF NOT EXISTS tableName (...)");
if (!_ok)
{
return false;
}
return true;
}
else {
//表存在,清空表数据
bool _ok = query.exec("delete from tableName");
query.clear();
return _ok;
}
}
}
这篇博客介绍了如何使用QSqlDatabase在Qt环境中创建和管理SQLite数据库。首先,通过QSqlDatabase添加数据库连接并设置数据库文件路径。接着,检查表是否存在,如果不存在则创建表,否则清空表数据。这个过程涉及到了数据库连接、表的创建和数据清理等关键步骤。
4711

被折叠的 条评论
为什么被折叠?



