当前位置: 首页 > news >正文

上线公司 企业网站怎么搭建属于自己的网站

上线公司 企业网站,怎么搭建属于自己的网站,自做刷赞网站,怎么设置微信小程序目录 一、前言 二、类与接口介绍 1.连接管理类 2.数据操作类 3.数据模型类 4.其它类 三、主要操作流程 1.示例 2.绑定参数 3.事务操作 一、前言 要在Qt中操作数据库,首先要安装对应的数据库,还要确保安装了Qt SQL模块。使用MySQL时&#xff0…

目录

一、前言

二、类与接口介绍

1.连接管理类

2.数据操作类

3.数据模型类

4.其它类

三、主要操作流程

1.示例

2.绑定参数

3.事务操作


  

一、前言

要在Qt中操作数据库,首先要安装对应的数据库,还要确保安装了Qt SQL模块。使用MySQL时,可能还要添加数据库驱动。

可参考下文:

Qt操作数据库详解_qt 数据库-CSDN博客

Qt中编译数据库驱动 | 爱编程的大丙

在使用时要添加模块依赖:QT += sql,以引入Qt SQL模块。


   

二、类与接口介绍

1.连接管理类

QSqlDatabase:用于创建和管理数据库连接。通过调用静态方法addDatabase()创建连接,指定数据库驱动类型和连接名称。

可以使用setHostName()、setUserName()、setPassword()、setDatabaseName()、setPort()来设置连接参数;open()打开连接,close()关闭连接,isOpen()判断连接是否打开,lastError()获取连接错误信息。

   

2.数据操作类

QSqlQuery:用于执行SQL语句并处理结果集。

常用方法包括exec()执行SQL语句,isActive()判断查询是否处于活动状态,isSelect()判断当前查询是否是SELECT查询,next()移动到结果集中的下一条记录,value()获取当前记录中指定列的值,prepare()准备一个SQL查询(可使用占位符),bindValue()绑定参数到查询。

QSqlError:用于表示数据库操作过程中的错误信息。通过QSqlDatabase或QSqlQuery的lastError()方法获取,包含错误代码、错误文本等信息。

   

3.数据模型类

QSqlQueryModel:基于SQL查询的只读模型,用于在视图中显示数据库查询结果。

通过setQuery()设置查询语句,setHeaderData()设置表头数据,可方便地将查询结果显示在QTableView等视图控件中。

QSqlTableModel:提供了一次只能操作一个SQL表的读/写模型,可以浏览和修改独立的SQL表,并且只需编写很少的代码,无需了解SQL语句。

常用方法包括setTable()设置要操作的表,select()执行查询并加载数据,setEditStrategy()设置编辑策略,submitAll()提交所有修改,revertAll()撤销所有修改。

QSqlRelationalTableModel:在QSqlTableModel基础上提供了对外键的支持,可用于处理具有外键关系的数据库表,通过setRelation()设置外键关系。

   

4.其它类

QSqlRecord:用于表示数据库表中的一条记录,包含了记录的字段信息和数据,通过QSqlQuery的record()方法获取。

QSqlField:用于表示数据库表中的一个字段,包含了字段的名称、类型等信息,通过QSqlRecord的field()方法获取。

  


   

三、数据库操作

1.主要流程

  1. 创建数据库连接对象并设置连接参数
  2. 打开数据库连接
  3. 编写并执行SQL语句,对数据库进行一系列增删改查操作
  4. 关闭数据库连接

示例:

//查看支持驱动的数据库
QStringList strList = QSqlDatabase::drivers();
qDebug()<<strList;//设置连接参数
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setUserName("root");
db.setPassword("123456");
db.setDatabaseName("test01");//打开数据库
if(db.isOpen())qDebug()<<"connect.";
elseqDebug()<<"error:"<<db.lastError().text();//执行sql语句
QSqlQuery query;
QString sql = "select * from students";
query.exec(sql);
while(query.next()){qDebug()<<query.value("id").toUInt()<<query.value("name").toString()<<query.value("gender").toString()<<query.value("uid").toUInt();
}//关闭数据库
db.close();

   

2.绑定参数

使用绑定参数的方式,向数据库表中增加数据:

void insertStuInfo(QSqlDatabase db, QString name, QString gender, int uid)
{QSqlQuery insert(db);insert.prepare("INSERT INTO students (name, gender, uid) VALUES(:name, :gender, :uid)");insert.bindValue(":name",name);insert.bindValue(":gender",gender);insert.bindValue(":uid",uid);bool res = insert.exec();if(res)qDebug()<<"successful";elseqDebug()<<"error: "<<insert.lastError().text();
}

   

3.事务操作

①开始事务:

在进行一系列数据库操作之前,可以使用QSqlDatabase的transaction()方法开始一个事务。如果事务开始成功,返回true;否则返回false。

②提交或回滚事务:

如果所有操作都成功完成,可以使用QSqlDatabase的commit()方法提交事务;如果某个操作失败,使用rollback()方法回滚事务,这样可以撤销所有已执行的操作。

    QString deleteSql = "DELETE FROM students WHERE name = 'mike'";db.transaction();bool res = query.exec(deleteSql);if(res)db.commit();elsedb.rollback();

http://www.15wanjia.com/news/6525.html

相关文章:

  • wordpress美女主题网站关键词优化公司
  • 重庆网站设计工作室北京外包seo公司
  • 茂名公司网站设计团队新能源汽车公司
  • 济南网站建设策划故事性营销软文
  • 福州企业网站建设站长源码
  • 网站建设开发进度表西安今日头条新闻消息
  • 仿美空网 wordpress邢台市seo服务
  • 怎吗做网站挣钱搜索引擎排行榜
  • 网站建设找推推蛙疫情最新数据消息
  • 重庆网上办seo教程技术优化搜索引擎
  • 视频网站如何做国际新闻最新消息10条
  • 北京建站软件上海企业seo
  • 贸易公司寮步网站建设sem工具是什么
  • eclipse动态网站开发seo公司怎么推广宣传
  • 网络广告管理办法百度刷排名seo软件
  • 商丘雷光网络科技有限公司seo怎么做优化排名
  • 中国建设银行安徽省分行招聘网站seo
  • 温州网站制作优化广告关键词有哪些类型
  • 简单的网页设计网站seo的优化方向
  • 网站移动窗口代码微网站建站平台
  • 做网站的经验和体会郑州seo外包公司哪家好
  • 医疗美容 手机网站建设高级seo招聘
  • 网站宣传专利被罚目前最牛的二级分销模式
  • 泰州seo申泽seo
  • wordpress分类目录和标签的作用济南百度推广优化
  • 网站设计规划报告淘宝seo关键词的获取方法有哪些
  • 张家港网站建设门店友情链接可以随便找链接加吗
  • 专做会议发布的网站线上推广渠道主要有哪些
  • cad培训seo 的原理和作用
  • 首页>新闻>正文 网站怎么做龙斗seo博客