QT---操作MySQL

连接数据库:

QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL","database1");//database是为了标识这个数据库
    //连接数据库
    db.setHostName("127.0.0.1");//设置数据库服务器IP
    db.setUserName("root");//数据库用户名
    db.setPassword("123456");
    db.setDatabaseName("info");//使用哪个数据库
    //打开数据库
    if(!db.open())//如果数据库打开失败
    {
        QMessageBox::warning(this,"打开数据库失败",db.lastError().text());//提示错误,打印错误信息
        return;
    }
    else
    {
        qDebug()<<"link successufull";
    }

我们成功连接上了数据库以后

写上头文件:

#include<QSqlQuery>//sql语句的头文件

才能写sql语句

这里是创建了一个表

QSqlQuery query(db);//在指定的数据库中写sql语句
query.exec("create table student(id int primary key auto_increment,name varchar(255),age int,score int);");

其他的增删改查都是一样的

这里提供一个不一样的

批量插入

头文件

#include<QVariantList>//包括了所有的数据类型

准备:

query.prepare("insert into student(name,age,score) values(?,?,?)");//问好相当于占位符,因为现在不知道具体是什么数据

我们先创建字段:

QVariantList nameList;
nameList<<"Mason"<<"Tom"<<"Tim";
QVariantList ageList;
ageList<<19<<20<<21;
QVariantList scoreList;
scoreList<<99<<98<<97;

然后给字段绑定值:

//给字段绑定值,按顺序绑定
query.addBindValue(nameList);
query.addBindValue(ageList);
query.addBindValue(scoreList);

最后执行:

query.execBatch();

结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值