zoukankan      html  css  js  c++  java
  • 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);

  • 相关阅读:
    bzoj 2257 (JSOI 2009) 瓶子与燃料
    bzoj 2257 (JSOI 2009) 瓶子与燃料
    splay 模板 洛谷3369
    费用流 模板 洛谷3381
    bzoj 1024 [SCOI2009]生日快乐——模拟
    bzoj 3231 [Sdoi2008]递归数列——矩阵乘法
    hdu 5823 color II——子集dp(独立集)
    bzoj 1093 [ZJOI2007]最大半连通子图——缩点+拓扑
    洛谷 3959 宝藏——枚举+状压dp
    bzoj 1034 [ZJOI2008]泡泡堂BNB——贪心
  • 原文地址:https://www.cnblogs.com/gd-luojialin/p/9215871.html
Copyright © 2011-2022 走看看