Qt数据库更新失败,QSQLDatabase

最近在做一个关于数据库的项目,数据库更新的时候老是出问题,大家帮我看看我写的数据库更新代码对不对?为什么无法更新数据库。

img

@ada; 为何无法更新数据库?

你这顺序不对啊,都exec了再bindValue没用了,应该先prepare(sql),然后bindValue,最后直接无参数exec()
还有自己做点错误判断啊,exec()报错时打印lastError()的内容

  • 这篇博客也许可以解决你的问题👉 :Qt QSqlDatabase的removeDatabase需要注意的地方
  • 除此之外, 这篇博客: Qt SQL模块之QSqlDatabase类中的 一些实用方法: 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    • tables()
      返回表格列表
    • primaryIndex()
      返回表的主索引
    • record()
      返回关于表字段的元信息
    • transaction()
      开始一个事务
    • commit()
      保存并完成一次数据库的提交(完成一个事务)
    • rollback()
      回滚(取消一次事务)
    • hasFeature()
      检查驱动程序是否支持事务
    • lastError()
      返回关于最后一个错误的信息
    • drivers()
      返回可用的SQL驱动程序的名称
    • isDriverAvailable()
      检查特定驱动程序是否可用
    • registerSqlDriver()
      注册定制驱动程序
      注意:QSqlDatabase::exec()已被弃用,请改用QSqlQuery::exec()
      注意:使用事务时,必须在创建查询之前启动事务