Qt入門篇(4): 建立存取資料庫的類別

在上一篇Qt入門篇(3):連結SQLITE資料庫,我簡單實作如何利用Qt連線到sqlite資料庫,然而我未建立資料庫管理類別,也就說此資料庫操作只能在mainwindow.cpp使用,因此為了使資料庫管理能再任意位置都能被使和更容易維護和擴充我們的程式碼,在這裡我將資料庫操作的設計成類別[YTDBConnection],如圖一所示.有關類別相關的解釋,請參考Qt之物件導向:什麼類別?.類別YTDBConnection主要處理資料料庫連線並取出我們所要的資料,而此類別詳細說明如下:(這些說明我們通常定義在標頭檔YTDBConnection.h,如圖二所示)
  1. 資料成員(data member) 
    • db:QSqlDatabase
  2. 成員函數(member function) 
    • OpenDB(): 設定資料庫類型和名稱,並且開啟資料庫.
    • CloseDB(): 關閉資料庫連線
    • getDataList(QStringList &d_List): 得到字串陣列的台灣城市資料
圖一.資料庫連線的類別

圖二.YTDBConnection.h-描述類別的構成

程式碼

由於此範例只是簡單實作,你可以參考Reference將類別修改成你要的,尤其在偵測作業系統的版本. 

類別說明

  1. OpenDB():連線到範例Taiwan SQLite資料庫

  2. 圖三.成員函數OpenDB

  3. getDataList(QStringList &d_List):得到一維字串陣列的台灣城市資料

  4. 圖四:成員函數getDataList

Reference:

1. Creating an SQLite database in Qt
http://developer.nokia.com/Community/Wiki/Creating_an_SQLite_database_in_Qt
2.Searching for data in a database in Qt
http://developer.nokia.com/Community/Wiki/Searching_for_data_in_a_database_in_Qt

留言

這個網誌中的熱門文章

VirtualBox教學:重設硬碟(.vdi)大小(上)

VirtualBox教學:重設硬碟(.vdi)大小(下)

VirtualBox教學: 新增Windows7虛擬電腦(下)