- 5
- 0
- 约4.51千字
- 约 5页
- 2017-08-10 发布于河南
- 举报
24-Qt数据库(四)利用QSqlQuery类执行SQL语句(二)
二十四、Qt数据库(四)利用QSqlQuery类执行SQL
语句(二)
接着上一篇教程。
二,在SQL语句中使用变量。
我们先看下面的一个例子,将“查询”按钮的槽函数更改如下:
void Widget::on_pushButton_clicked()
{
QSqlQuery query;
query.prepare(“insert into student (id, name) ”
“values (:id, :name)”);
query.bindValue(0, 5);
query.bindValue(1, “sixth”);
query.exec();
//下面输出最后一条记录
query.exec(“select * from student”);
query.last();
int id = query.value(0).toInt();
QString name = query.value(1).toString();
qDebug() id name;
}
运行效果如下:
可以看到,在student表的最后又添加了一条记录。在上面的程序中,我们先使
用了prepare()函数,在其中利用了“:id”和“:name”来代替具体的数据,而
后又利用bindValue()函数给id和name两个属性赋值,这称为绑定操作。其中
编号0和1分别代表“:id”和“:name”,就是说按照prepare()函数中出现的
属性从左到右编号,最左边是0 。这里的“:id”和“:name”,叫做占位符,
这是ODBC数据库的表示方法,还有一种Oracle的表示方法就是全部用“?”号。
如下:
query.prepare(“insert into student (id, name) ”
“values (?, ?)”);
query.bindValue(0, 5);
query.bindValue(1, “sixth”);
query.exec();
我们也可以利用addBindValue()函数,这样就可以省去编号,它是按顺序给属
性赋值的,如下:
query.prepare(“insert into student (id, name) ”
“values (?, ?)”);
query.addBindValue(5);
query.addBindValue(“sixth”);
query.exec();
当用ODBC的表示方法时,我们也可以将编号用实际的占位符代替,如下:
query.prepare(“insert into student (id, name) ”
“values (:id, :name)”);
query.bindValue(“:id”, 5);
query.bindValue(“:name”, “sixth”);
query.exec();
以上各种形式的表示方式效果是一样的。特别注意,在最后一定要执行exec()
函数,所做的操作才能被真正执行。
下面我们就可以利用绑定操作在SQL语句中使用变量了。
void Widget::on_pushButton_clicked()
{
QSqlQuery query;
query.prepare(“select name from student where id = ?”);
int id = ui-spinBox-value(); //从界面获取id的值
query.addBindValue(id); //将id值进行绑定
query.exec();
query.next(); //指向第一条记录
qDebug() query.value(0).toString();
}
运行程序,效果如下:
我们改变spinBox的数值大小,然后按下“查询”按钮,可以看到对应的结果就
出来了。
三,批处理操作。
当要进行多条记录的操作时,我们就可以利用绑定进行批处理。看下面的例
您可能关注的文档
- 网络发票应用管理系统操作说明(企业篇).doc
- 腹膜透析欧洲最佳实践指南(EBPG)8、15.doc
- 考研研究postgraduate_entrence.ppt
- 英文美文赏析:毕业,继续前进.ppt
- 英语:Unit 2《 Healthy eating》学案(新人教必修3).doc
- 营销部门的战略思考和策略执行.doc
- 营销培训 4A广告策略培训营销策划.ppt
- 能力单元2 实现路由器的操作与配置.ppt
- 行政领导学期末复习提要.doc
- 菲利普科特勒-市场营销第10版全套19个PPT08.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- SJ∕T 10460-2016 太阳光伏能源系统图用图形符号.pdf
- 新求精德语强化教程(第4版)初级1课后练习答案(改进版) .pdf VIP
- 北师大版三年级下册数学全册教学设计(配2026年春改版教材).docx
- (2026年)跌倒坠床护理综合指南PPT课件.pptx VIP
- 工程设计应急响应方案(3篇).docx VIP
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
原创力文档

文档评论(0)