• 4357阅读
  • 1回复

[提问]QSqlTableModel添加数据出错 [复制链接]

上一主题 下一主题
离线huheman
 

只看楼主 倒序阅读 楼主  发表于: 2016-08-15
        我建了一个QSqlRelationalTableModel 和一个QSqlTableModel对象,分别是carModel和factoryModel,并且连接了数据(QSQLITE)
        当我用QSqlField来向数据库添加车辆和车厂数据时就出现错误了,错误如下:
                        添加id=1的"first Factory"车厂,正常
                        添加id=1的"first Car"车,正常
                        添加id=2的"second Factory"车厂,正常
                        添加id=2的"seconde Car“车,lastError().text()无提示出错,但视图却没有显示
                        说明:我把factoryModel的 "id" 设置为 carModel 的外键:
                                 carModel->setRelation(2,QSqlRelation("factory","id","manufactory"));
                         并且只要把这个设置外键语句删掉程序就正常了(但我就是想知道有外键情况下怎样处理这个问题)。


附件是我测试的例子,因为个人习惯我用GBK编码写的,打开后需要在文件编码那里改下编码为“GBK/CP936”那个。
我是跟着教程做的,但教程也有这个问题,摸了一下下午还是不清楚是什么原理,请高手略作指点。
QSqlTableModel出错li'zi whyerror.zip (26 K) 下载次数:0


离线huheman

只看该作者 1楼 发表于: 2016-08-15
似乎是用QSqlField来添加数据会出错,那只好乖乖用query来添加,试过了,用query不会有事
快速回复
限100 字节
 
上一个 下一个