用QT创建并编辑一个excel表格,但当编辑记录中某字段出现空值时其他字段无法修改数据,修改的数据自动还原为原值。请熟悉的同仁帮帮忙。具体信息如下:
1、创建了表格:
query_1.exec("create table 钻具报表(序号 text, 编号 text, 名称 text,单根长度 double,累计长度 double,最大外径 double,最小内径 double,备注 text)");
2、建立QSqlTableView和Model
创建了QSqlTableView
创建了Model;QSqlTableModel *tableModel = new QSqlTableModel();
(仅使用了这两个类,没有使用委托类,即默认)
3、当使用SQL-insert语句插入数据时一切正常,即使某字段为空,整条记录也可插入
4、当使用QSqlTableView显示数据时一切正常,但修改某字段,必须保证其他相应字段不空,否则不能修改。
问题:
1、为什么插入时可以空,但在QSqlTableView中有空字段值却无法将记录数据提交到表
2、如何控制QSqlTableView中字段的显示格式,例如本例中的序号类型本应为整数,但如设为整数,QSqlTableView中自动显示了小数点,现在因为不知如何控制,只好设为text以避免出现小数点。