操作(创建、增、删、改、查)"/>
qt 数据库操作(创建、增、删、改、查)
首先,在.pro文件中添加如下代码
QT += core gui sql
然后再添加头文件
#include <QSqlQuery>
#include <QSqlDatabase>
创建并打开数据库
//添加MYSQL数据库QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); //数据库对象//设置数据库db.setDatabaseName("./path.db");//打开数据库if( !db.open() ){ //数据库打开失败qDebug("db open fail");return ;}QSqlQuery query;query.exec("create table path(resEncrypt QString, resDecrypt QString, \binEncrypt QString, binDecrypt QString)");
1、遍历
QString select = QString("select * from path");
QSqlQuery query;
query.exec(select);
while(query.next())
{qDebug() << query.value(0).toString();qDebug() << query.value(1).toString();qDebug() << query.value(2).toString();qDebug() << query.value(3).toString();
}
2、插入
第一种方法:
QString buf = "laoma";
QString str = QString("insert into path(resEncrypt, resDecrypt, binEncrypt, binDecrypt) \values('%1', '%2', '%3', '%4')").arg(buf).arg(buf).arg(buf).arg(buf);
QSqlQuery query;
query.exec(str); //执行插入操作
第二种方法:
query.prepare("insert into scan(manufacture,version,scanCmd,setCmd,offest,size,floatFlag) values(?,?,?,?,?,?,?)");
query.bindValue(0, QString("小米"));
query.bindValue(1, QString("xiaomi"));
query.bindValue(2, 1);
query.bindValue(3, 2);
query.bindValue(4, 4);
query.bindValue(5, 4.1);
query.bindValue(6, true);
if(!query.exec())
{qDebug() << "insert fail";
}
3、修改
QString path = "gui";
QString str = QString("update path set binDecrypt = '%1' where binDecrypt = laoma").arg(path);
QSqlQuery query;
query.exec(str);
4、删除
QString str = QString("DELETE FROM equipment WHERE name = '%1'").arg("gui");
QSqlQuery query;
query.exec(str);
更多推荐
qt 数据库操作(创建、增、删、改、查)
发布评论