qt自带QSqlite数据库,不需要另外安装数据库可直接操作db文件,对于简单demo比较友好。
code:
bool CreateDB()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("test.db"); // 设置db文件名称
db.setUserName("100001"); // 设置登陆账号
db.setPassword("123456"); // 设置登陆密码
if (!db.open()) {
QMessageBox::critical(nullptr, QObject::tr("Cannot open database"),
QObject::tr("Unable to establish a database connection.\n"),
QMessageBox::Cancel);
return false;
}
QSqlQuery query;
query.exec("create table STUINFO (id int primary key, "
"name varchar(20), sex varchar(4), major varchar(20), score int)");
return ture;
}
查询示例:
void Select()
{
QSqlQuery sql_query;
QString select_sql = QString("select * from %1").arg(tab); // tab为表名
if(!sql_query->exec(select_sql)) // 执行查询语句
{
qDebug()<<sql_query->lastError(); // 执行出错
}
else
{
while(sql_query->next())
{
if (sql_query->value(0) == "100001") { // 查询到的内容如果匹配
qDebug() << sql_query->value(0);
}
}
}
}
其他操作类似。。。