Qt SQL模块基础

Qt SQL模块基础

一、Qt SQL模块支持的数据库

官方帮助文档中的Qt支持的数据库驱动如下图:

Qt SQL 模块中提供了一些常见的数据库驱动,包括网络型数据库,如Qracle、MS SQL Server、MySQL等,也包括简单的单机型数据库。

Qt SQL支持的数据库如下:

驱动名称 数据库
QDB2 IBM DB2(7.1及以上版本)数据库
QIBASE Borland InterBase数据库
QMYSQL MySQL 数据库
QOCI Qracle 调用接口驱动(Oracle Call Interface Driver)
QODBC Open Dabebase Connectivity(ODBC),Microsoft 的SQL Server 数据库,以及其他支持ODBC接口的数据库,如Access
QPSQL PostgreSQL(7.3及以上版本)数据库
QSQLITE2 SQLite2 数据库
QSQLITE SQLite3 数据库
QTDS Sybase Adaptive Server(注意:从Qt 4.7 开始已过时)

二、Qt 模块的主要类

官方文档中Qt 模块主要的类:

Qt模块中的主要类:

类名称 功能描述
QSqlDatabase 处理与数据库的连接
QSqlDriver 用于访问特定 SQL 数据库的抽象基类。
QSqlDriverCreator 提供针对特定驱动程序类型的 SQL 驱动程序工厂的模板类。
QSqlDriverCreatorBase SQL 驱动程序工厂的基类。
QSqlDriverPlugin 自定义 QSqlDriver 插件的抽象基类。
QSqlError 提供 SQL 数据库错误信息。
QSqlField 操作 SQL 数据库表和视图中的字段。
QSqlIndex 提供用于操作和描述数据库索引的函数。
QSqlQuery 执行和操作 SQL 语句的工具。
QSqlQueryModel 用于 SQL 查询结果集的只读数据模型。
QSqlRecord 封装数据库记录的类。
QSqlRelation 存储有关 SQL 外键的信息。
QSqlRelationDelegate 用于显示和编辑来自 QSqlRelationalTableModel 的数据的代理。
QSqlRelationTableModel 支持外键的单表可编辑数据模型。
QSqlResult 访问特定 SQL 数据库数据的抽象接口。
QSqlTableModel 单表的可编辑数据模型。
QDataWidgetMapper 用于界面组件与字段之间实现映射,实现字段内容自动显示的类

三、数据库相关数据模型类的继承关系

数据库的操作一般需要将数据库的内容在界面上进行显示和编辑,Qt采用Model/View 结构进行数据库内容的界面显示。QTableView 是常用的数据库内容显示视图组件,用于数据库操作的数据模型有QSqlQueryModel、QSqlTableModel、QSqlRelationalTableModel.

好了,Qt SQL模块的基础知识就介绍到这里。

相关推荐
freejackman4 小时前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构
敲上瘾5 小时前
Qt Widgets入门:项目模板解析与Hello World
开发语言·数据库·c++·qt·ui·qt6.3
码途行者6 小时前
网站的SQL 注入:从攻击原理到防御措施
开发语言·sql·php
Decay__8 小时前
SQL Server 数据库全栈运维实战系列 — 合集索引(24 篇)
运维·数据库·sql·mysql·架构
Thanks_ks8 小时前
SQL 的 GROUP BY 与聚合函数:从会写 SELECT 到会做统计
数据库·sql·mysql·group by·数据统计·聚合函数·having
Decay__16 小时前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
MOONICK21 小时前
QT元数据
开发语言·qt
Decay__1 天前
14_MySQL 高可用与容灾架构 —— MGR / InnoDB Cluster / Keepalived+VIP / 双主 / 读写分离 / 两地三中心
运维·数据库·sql·mysql·架构
freejackman1 天前
【实战三】撕开脱敏盲区:深度解析 CASE WHEN 与窗口函数血缘
大数据·数据库·sql
橙橙笔记1 天前
QT的学习第四部分
linux·qt·学习·音视频