【Qt】Qt数据库简介
00. 目錄
文章目錄
- 00. 目錄
- 01. Qt SQL模塊簡介
- 02. 數據庫類
- 03. 數據庫驅動
- 04. 測試代碼
- 05. 附錄
01. Qt SQL模塊簡介
本概述假定您至少具有SQL的基本知識。你應該能夠理解簡單的SELECT,INSERT,UPDATE,和DELETE語句。盡管QSqlTableModel類提供了不需要瀏覽SQL即可進行數據庫瀏覽和編輯的接口,但強烈建議您對SQL有基本的了解
?
QT通過Qt SQL模塊提供了對SQL數據庫的支持,Qt SQL模塊中的API分為三層:驅動層、SQL接口層、用戶接口層。
如果要使用Qt SQL模塊中的類,需要在工程文件(.pro文件)中添加QT += sql配置。
QT += sql
對應數據庫部分的內容,大家可以在幫助中查看SQL Programming關鍵字。
1.1 驅動層
? 驅動層為具體的數據庫和SQL接口層之間提供了底層的橋梁,主要類包括QSqlDriver、QSqlDriverCreator、QSqlDriverCreatorBase、QSqlDriverPlugin和QSqlResult。
1.2 SQL接口層
? SQL接口層提供了對數據庫的訪問,主要類包括Qt SQL模塊中的QSqlDatabase、QSqlQuery、QSqlError、QSqlField、QSqlIndex和QSqlRecord。 QSqlDatabase用來連接數據庫,QSqlQuery類用來與數據庫實現數據交互。
1.3 用戶接口層
? 用戶接口層主要包括Qt SQL模塊中的QSqlQueryModel、QSqlTableModel、QSqlRelationalTableModel。用戶接口層的類實現了將數據庫中的數據鏈接到窗口部件上,是使用模型/視圖框架實現的,是更高層次的抽象,即便不熟悉SQL也可以操作數據庫。需要注意的是,在使用用戶接口層的類之前必須先實例化QCoreApplication對象。
02. 數據庫類
這些類提供對SQL數據庫的訪問。
03. 數據庫驅動
Qt SQL模塊使用數據庫驅動和不同的數據庫接口進行通信。由于Qt的SQL模塊的接口是獨立于數據庫的,所以所有具體數據庫的代碼包含在了這些驅動中。QT本身提供了多種數據庫驅動,并且可以添加其他數據庫驅動。QT提供的數據庫驅動源碼可以作為編寫自定義驅動的模型。
目前Qt5.12支持的數據庫驅動如下:
04. 測試代碼
可以使用QSqlDatabase中相關方法測試當前Qt版本默認支持的數據庫驅動
測試代碼如下:
#include <QCoreApplication>#include <QSqlDatabase> #include <QDebug>int main(int argc, char *argv[]) {QCoreApplication a(argc, argv);//獲取當前Qt支持的驅動列表QStringList drivers = QSqlDatabase::drivers();foreach (QString driver, drivers){qDebug() << driver;}return a.exec(); }測試結果如下:
05. 附錄
關鍵詞:SQL Programming
總結
以上是生活随笔為你收集整理的【Qt】Qt数据库简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Qt】Qt中QJsonDocument
- 下一篇: 【Qt】Qt数据库驱动层