Qt操作Access資料庫

2021-06-25 23:59:31 字數 1327 閱讀 1636

qt為資料庫訪問提供qtsql模組實現了資料庫與qt應用程式的無縫整合。qtsql模組使用驅動外掛程式與不同的資料庫介面通訊。qt自帶有qodbc驅動,通過windows平台上提供的odbc驅動訪問支援odbc的資料庫,如ms access、sql server等 (windows xp 自帶有access和sql server的odbc driver)。下面我們就用qodbc對access資料庫進行訪問。

使用qtsql模組之前,需在工作檔案(.pro)中中入qt += sql,在標頭檔案中包含#include 。

qsqldatabase提供訪問乙個資料庫的連線介面。建立乙個連線,需要呼叫qsqldatabase的成員函式:adddatabase。

qsqldatabase  adddatabase(const qstring & type, const qstring & connectionname = qlatin1string( defaultconnection ) ),引數type為驅動名,我們這裡使用"qodbc",第二個引數為連線名,預設值為預設連線,我們這裡把連線名設為"test"。這裡假如你使用相同連線的連線名,則新連線將替換舊連線。

建立連線後,以後可以使用qsqldatabase的靜態函式database,獲取連線。

qsqldatabase  database ( const qstring & connectionname = qlatin1string( defaultconnection ), bool open = true ),引數defaultconnection為資料庫連線名,這裡我們上面設的是"test",引數open為是否開啟資料庫連線。

setdatabasename ( const qstring & name )函式, 引數name,對於qodbc驅動,這裡是

dsn 檔名或者一連線字串,這裡我們使用連線字串:"driver=;fil=;dbq=test.mdb",test.mdb為access資料檔名。

好了,用**來對test.mdb資料庫的訪問。

//建立資料庫連線

void mainwindow::connectdb()

//建立一連線名為"test"的資料庫連線

dbconn = qsqldatabase::adddatabase("qodbc", "test");

qstring dsn = qstring("driver=;fil=;dbq=test.mdb");

dbconn.setdatabasename(dsn); }

//查詢資料庫資料

void mainwindow::querydb()

Qt連線本地Access資料庫

最近做專案需要使用qt做乙個 想法是直接繫結本地資料庫字段然後顯示就行了,由於剛學習qt不久,過程十分曲折,先部落格一篇僅作記錄,新手上路,歡迎批評指正。在qt中有自帶的qsql類是用來運算元據庫的,本著物件導向的原則,我決定將資料庫連線封裝成乙個類。先引入標頭檔案 include 執行緒保護序列化...

C SQL操作ACCESS資料庫

前幾天寫的 的資料有點不對,就在vc下寫了個程式來刷了一下資料.該程式為doc下的程式,沒有介面的,操作access資料庫,其中,用boost的lexical cast 對型別進行了轉換.期間用vector儲存了資料庫的資料,希望對有需要的人有幫助.第乙個程式用來生成單位編號的,程式如下 inclu...

C 操作Access資料庫

using system using system.collections.generic using system.linq using system.text using system.data using system.data.oledb using system.configuration...