Qt数据库处理时候注意的小结1
2016-01-19 18:44
411 查看
问题:
数据库无法多次插入是怎么回事?
经过一个下午的实验之后,明白了一件十分重要的事情。数据库的建立以及绑定已经完成并且绑定好了,为什么自己的数据根本没有办法正常的插入进去了呢?
代码:
全程没有问题,出现错误的地方只有一个那就是插入一个键值的时候出现了重复,那么这个插入动作将会到了键值重复处停止插入。
当和第一个键值重复的时候,看起来就像没有插入一样。
原来是这么简单的错误啊。
数据库无法多次插入是怎么回事?
经过一个下午的实验之后,明白了一件十分重要的事情。数据库的建立以及绑定已经完成并且绑定好了,为什么自己的数据根本没有办法正常的插入进去了呢?
代码:
MainWindow::MainWindow(QGraphicsView *parent) : QGraphicsView(parent) { tablemodel = new QSqlTableModel; tablemodel->setTable("picture"); tablemodel->select(); AddButton = new QPushButton(tr("ADD"),this); scene = new QGraphicsScene; connect(AddButton,SIGNAL(clicked(bool)),this,SLOT(addpicture())); } void MainWindow::addpicture() { QString file = QFileDialog::getOpenFileName(this,tr("open file"),".", tr("*.gif , *.png , *.jpg")); if(file == NULL) { return; } int rowcount = tablemodel->rowCount(); qDebug() << file << rowcount; int row = rowcount; tablemodel->insertRows(row,1); tablemodel->setData(tablemodel->index(row,0),rowcount+1); //当时写的是tablemodel>setData(tablemodel-//>index(row,0),rowcount); //这里和创建的id重复了 tablemodel->setData(tablemodel->index(row,1),"OK"); tablemodel->setData(tablemodel->index(row,2),file); tablemodel->submitAll(); }
全程没有问题,出现错误的地方只有一个那就是插入一个键值的时候出现了重复,那么这个插入动作将会到了键值重复处停止插入。
当和第一个键值重复的时候,看起来就像没有插入一样。
原来是这么简单的错误啊。
相关文章推荐
- qt 设置
- JS组件系列——分享自己封装的Bootstrap树形组件:jqTree
- QTreeView 按下*键后死机
- qt中 plaintextedit高亮问题
- Qt5.5 opencv 2.4.9 windows下配置问题
- 两种系统启动&加载QT库
- QT QComboBox,QFrame,QSpinBox,QColorDialog用法
- Qt右键菜单的添加
- QT 2d各种画图
- QT控制台下学习类
- Qt之美(一):d指针/p指针详解
- QT事件过滤器、事件重载和焦点事件
- 使用Qt制作一个简易计算器
- QT多语言处理(语言国际化)
- Qt 插件综合编程-基于插件的OpenStreetMap瓦片查看器客户端(1)-墨卡托投影与坐标控制
- QT Android 调用JAVA代码
- QT类的私有成员变量和函数的隐藏
- QT5.6所开放的7个新模块(图表,虚拟键盘,性能分析,静态分析,测试正好,2D渲染)
- QT、QTE、qtopia、Qtopia Core,Qt Extended,Qt-embedded区别
- s5pv210编译qt