Qt操作sqlite数据库

开发工具:Qt Creator 4.2.1 (Community)

开发平台:windows 7


sqlite的操作与mysql的操作很相似,查看操作mysql教程点击这里


一、在.pro配置文件中添加添加数据库

QT       += core gui sql   #后面追加上sql


二、头文件引入

#include <QDebug>
#include <QMessageBox>
#include <QSqlError>
#include <QSqlQuery>
#include <QVariantList>


三、下面直接上代码

    //打印数据库驱动
    qDebug() << QSqlDatabase::drivers();

    //添加sqlite数据库
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    //设置数据库
    db.setDatabaseName("../info.dat");

    //打开数据库
    if(!db.open()){
        QMessageBox::warning(this,"warning",db.lastError().text());
        return;
    }
    QSqlQuery query;
    QString sql = "create table student(id int primary key, name char(50) not null, pwd char(50) not null);";
    query.exec(sql);

    //批量插入数据
    query.prepare("insert into student(id,name,pwd) values(?,?,?)");
    QVariantList idList;
    idList << "1" << "2";
    QVariantList nameList;
    nameList << QString("张三").toUtf8() << QString("李四").toUtf8();
    QVariantList pwdList;
    pwdList << "110110" << "123456";
    //给字段绑定相应的值
    query.addBindValue(idList);
    query.addBindValue(nameList);
    query.addBindValue(pwdList);
    //执行预处理命令
    query.execBatch();

    //查询
    sql = "select * from student";
    query.exec(sql);
    while(query.next()){
        //取出并打印值
        qDebug() << query.value("id").toInt()
                 << query.value("name").toString()
                 << query.value("pwd").toString();
    }


版权声明: 此文为本站源创文章[或由本站编辑从网络整理改编],
转载请备注出处:
[狂码一生] https://www.sindsun.com/articles/16/96
[若此文确切存在侵权,请联系本站管理员进行删除!]


--THE END--