
用qsqltablemodel的insetrow()、setdata()、submitall()函数实现增;
officeTable->insertRow(0);
officeTable->setData(officeTable->index(0, 0), row);
officeTable->setData(officeTable->index(0, 1), newWnd->imageFileEditor->currentIndex());
officeTable->setData(officeTable->index(0, 2), newWnd->locationText->text());
officeTable->setData(officeTable->index(0, 3), newWnd->countryText->currentText());
officeTable->setData(officeTable->index(0, 4), newWnd->descriptionEditor->toPlainText());
officeTable->submitAll();
用removerow()、submitall()函数实现删;
int officeCount = officeTable->rowCount();
officeTable->removeRow(id);
for(int i = id; i < officeCount - 1;i++)
{
officeTable->setData(officeTable->index(i, 0), i);
}
officeTable->submitAll();
用QSqlRecord类的setvalue实现改;
QSqlRecord recordCurrentRow = officeTable->record(id);
recordCurrentRowsetValue("id", id - 1);
officeTable->setRecord(id - 1, recordCurrentRow);
officeTable->submitAll();
用QSqlRecord类的value进行比较实现查;
int Dialog::findArtistId(const QString &artist)
{
QSqlTableModel artistModel = model->relationModel(2);
int row = 0;while (row < artistModel->rowCount()) {
QSqlRecord record = artistModel->record(row);
if (recordvalue("artist") == artist)
return recordvalue("id")toInt();
else
row++;
}
return addNewArtist(artist);
}建议用Model和View
用QSqlQuery直接 *** 作数据库,执行数据库语句,将你QTableWidget中的数据替换到语句中对应的字段
例如:
QString(“%1,%2”)arg("wang",“25”)
可以实现你需要的功能
点击一下查看按钮,会添加一条信息,在pc机上很容易实现了,但在Arm开饭板上,数据库能打开但执行插入的 *** 作的时候总是报错,我把我能想到的可能都想到了,1,修改了一下数据库的权限,2,export
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/Trolltech/QtEmbedded-470-arm/plugins/sqldrivers
,sqlite库的路径也加上了,但运行结果是一样的,错误提示不是打开数据库失败,就是动态库超出链接队列什么的(英语不太好),总之不行。后来我决定采取比较二的选择,在arm板linux系统上跑sqlite插件,后来还是以失败告终(但得到了好多启发,下片博文讲),无奈我想到的办法是整一个好的sqliteDemo
在板子上跑一下,执行sql语句的时候还是不行,报错信息是打开数据库失败,无奈做了下一步决定,重烧了一下文件系统,和内核,结果还是不行,在崩溃的边缘,向老大求教,捣鼓了一阵,结果把生成的可执行文件放到了根目录下成功了!可以对数据库进行各种 *** 作,我把我自己写的Qt
sqlite的小demo也放到了根目录下结果也成功运行了,很奇怪呀!网上还有人说友善的arm板子对数据库的支持不好。
以上就是关于QT数数据库Mysql中 QSqlQuery、QSqlQueryModel 、和QSqlTableModel实现增删改查代码全部的内容,包括:QT数数据库Mysql中 QSqlQuery、QSqlQueryModel 、和QSqlTableModel实现增删改查代码、求帮忙解决,基于qt下,QListWidget里怎样显示来自数据库的信息,当前桌,人员,时间…、Qt如何实现对SQLite的写入与更新 *** 作的,急!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)