QT6,数据库批量添加数据方法

    //批量插入数据
    //odbc风格,预处理语句,其中?相当于占位符
    query.prepare("insert into student(name,age,score) values(?,?,?)");
    //将字段内容添加到指定list中
    QVariantList namelist;
    namelist <<"zhao"<<"qian"<<"sun"<<"li";
    QVariantList agelist;
    agelist <<10<<20<<30<<40;
    QVariantList scorelist;
    scorelist <<60<<70<<80<<90;
    //给字段按顺序绑定相应的值
    query.addBindValue(namelist);
    query.addBindValue(agelist);
    query.addBindValue(scorelist);
    //执行预处理命令
    if(!query.execBatch())
    {
        qDebug() << query.lastError();
    }
    //oracle风格:占位符+自定义名字
    query.prepare("insert into student(name, age, score) values(:name, :age, :score)");
    QVariantList Namelist;
    Namelist<<"zhou"<<"wu"<<"zheng"<<"wang";
    QVariantList Agelist;
    Agelist<<11<<21<<31<<41;
    QVariantList Scorelist;
    Scorelist<<61<<71<<81<<91;
    //为前面留下的:标志绑定
    query.bindValue(":name",Namelist);
    query.bindValue(":age",Agelist);
    query.bindValue(":score",Scorelist);
    //执行预处理命令
    query.execBatch();

跟着qt5的视频学了两种写法,但是那两种写法不能写入MySQL数据库

经过测试,这两种写法能实现批量添加。

posted @ 2024-08-03 17:36  文姬的九命猫  阅读(42)  评论(0编辑  收藏  举报