33Sql数据删除与遍历

数据库的创建、添加、修改、查询、删除都是利用SQL语句和类QSqlQuery的结合。

 

QSqlDatabase::database()。可返回当前正在打开的数据库对象。

 

数据库的删除

    //获取删除的名字

    QString strName=ui->lineEdit->text();

    //开始事务

QSqlDatabase::database().transaction();

//删除该数据,但数据库没有更新,需要事务的提交

    QString strTemp=QString("DELETE FROM  student WHERE sname='%1'").arg(strName);

  //执行

    QSqlQuery query;

query.exec(strTemp);

 

提交事务

QSqlDatabase::database().commit();

撤销操作,回到transaction()处

QSqlDatabase::database().rollback();

 

事务:简单来说就等同于一个点。当后面出现错误操作时,可以回滚到该点上,撤销操作。

 

 

遍历数据库

    //查询数据库

    query.exec("SELECT * FROM student;");

    //遍历数据库,输出所有数据

    while(query.next())

    {

        qDebug()<<query.value("id").toInt()

                    <<query.value("sname").toString()

                    <<query.value("age").toString()

                    <<query.value("score").toInt();

}

 

修改数据

 

修改数据

    //获取修改的名字

QString strName1=ui->lineEdit->text();

  //修改后的名字

QString strName2=ui->lineEdit_2->text();

    //开始事务

QSqlDatabase::database().transaction();

//删除该数据,但数据库没有更新,需要事务的提交

    QString strTemp=QString("DELETE FROM  student set  sname=’%1 ’ WHERE sname='%2").arg(strName2).arg(strName1);

  //执行

    QSqlQuery query;

query.exec(strTemp);

 

转载于:https://www.cnblogs.com/gd-luojialin/p/9215871.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值