QSqlTableModel使用简介

  • QSqlTableModel可以和QTableView共同使用,只需对QSqlTableModel类操作就可以实现读写数据库,
    同时将数据显示在tableview中,相同的更改tableview中的值也可以直接同步到数据库中。
  • QSqlTableModel类使用注意:
    QSqlTableModel::setHeaderData,使用该方法设置的表头内容只是影响在QTableView中显示,不会影响对数据库的操作。
    QSqlTableModel操作数据库是通过QSqlRecord来操作内容的。QSqlRecord的使用有如下注意点
    QSqlRecord record();返回的是空的,但是包含表头名的QSqlRecord;
    QSqlRecord record(int row);返回对应行的record,如果没有对应行则同上面不带参数的record;
    QSqlRecord::isEmpty()是判断QSqlRecord是否包含表头名,不是判断数据的;
    QSqlRecord::setGenerated();QSqlRecord的每个值都要使用该接口设置为true;不然会报"No Fields to update"
        这里需要注意的是官方文档说这个值默认是true,要设置为false;实测新写入的每个值的这个参数都是flase,要设置成true才能写入到数据库。

你可能感兴趣的:(数据库,qt,数据库,qt)