There is a class derived from QSqlTableModel, in which only the data method is redefined. At the same time, the QSqlTableModel :: record (int row) method returns an empty record, the fields in which are QVariant (Invalid). In this case, the field names are returned correct. Database - sqlite