QT 的QSqlDatabase、QSqlQuery、QProcess、QSqlTableModel类初步入门

本文深入讲解了Qt中QSqlDatabase类的使用,包括数据库连接、QSqlQuery执行SQL语句及QSqlTableModel类的高级应用,帮助读者掌握Qt环境下数据库的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

QSqlDatabase 这个类的实例化对象用于连接数据库   官方代码如下:

QSqlDatabase db = QSqlDatabase::addDatabase("QPSQL");

      db.setHostName("acidalia");
      db.setDatabaseName("customdb");
      db.setUserName("mojito");
      db.setPassword("J0a1m8");
      bool ok = db.open();
 

QSqlQuery 用来 提供执行和操作SQL的方法

 

下面说 exec

bool QSqlQuery::exec(const QString &query)

执行查询中的SQL。如果查询成功,则返回true并将查询状态设置为active;否则返回false。

active 就是成功执行,但尚未完成的QSqlQuery   可以理解为打电话  接通了  该说得话说完了 但是没有挂机

可以通过调用finish()或clear()使查询处于非活动状态,也可以删除qsqlquery实例。

查询字符串必须使用适合查询的SQL数据库的语法(例如,标准SQL)。

 

//db是已经连接成功的数据库

QSqlQuery query(db);
query.exec("insert into course values(0,'数学','峰老师')");  这句话的意思是查询  如果没有对应的  则写入数据库中

QPorcess 类 

这个类用来启动qt外的其他应用程序   

例如

 QProcess process;
 process.start("C:/MySQL/bin/mysqld.exe");
表示它启动了  这个文件夹中的exe文件

 

QSqlTableModel类

QsqlTableModel是一个高级接口,用于从单个表中读取和写入数据库记录。它构建在较低级别的qsqlquery之上,可用于向视图类(如qtableview)提供数据。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值