Qt之資料庫程式設計

2021-08-26 01:32:09 字數 2252 閱讀 6172

摘自:《c++ gui qt4程式設計》

在qt中,實現與資料庫程式設計相關的模組是qtsql模組,該模組提供了一組與平台以及資料庫種類無關的sql資料庫訪問介面。此介面通過驅動程式與各種資料庫進行通訊。qt桌面版提供的驅動程式如下:

驅動程式

資料庫qdb2

ibm db2 7.1版以及更高版本

qoci

甲骨文oracle

qodbc

odbc(包括微軟公司的sql伺服器)

qmysql

mysql

qpsql

postgresql的7.3版以及更高階的版本

一、連線資料庫

bool conndb()

return true;

}

二、運算元據庫

bool querydb(const qstring &sql)

return false;

}

三、例項

/*

*功能:乙個登入小模組

*軟體環境:ubuntu 9.04, qt4.5, postgresql8.3

*main.cpp

*/int main(int argc, char *argv)

/*

*login.h

*說明:登入主介面的標頭檔案

*/#ifndef login_h

#define login_h

#include class qlineedit;

class qpushbutton;

class login :public qdialog

;#endif

/*

*login.cpp

*說明:登入主介面

*/#include #include "login.h"

#include "mysql.h"

login::login(qwidget *parent)

:qdialog(parent)

void login::logined()

else

}

/*

*mysql.h

*說明:封裝的sql連線

*/#ifndef mysql_h

#define mysql_h

#include class mysql :public qobject

;#endif

/*

*mysql.cpp

*說明:封裝的sql連線

*/#include #include #include #include "mysql.h"

mysql::mysql(qobject *parent)

:qobject(parent)

bool mysql::conndb()

return true;

}bool mysql::querydb(const qstring &sql)

return false;

}

/*

*mysql.sql

*說明:在postgresql資料庫中建錶用的sql語句

*/-- drop table users;

create table users

( "name" character varying(20) not null,

"password" character varying(20) not null

)with (oids=false);

alter table users owner to konglingchun;

insert into users (name, password)

values ('001', '1234');

注意:1、在.pro檔案中,別忘了加上 qt += sql

2、如果提示沒有postgrestsql資料庫的驅動,可以通過命令sudo apt-get install libqt4-sql-psql來安裝驅動;

如果您用的是mysql資料庫,那麼命令是sudo apt-get install libqt4-sql-mysql。

我這裡有乙份很全的qt4的原始碼包檔案,想用哪個庫檔案直接安裝就可以了。

Qt資料庫程式設計

qtsql模組提供了乙個平台無關且資料庫無關的訪問sql資料庫的介面。qt中的每個資料庫連線用乙個qsqldatabase物件來表示 qt使用不同driver來和各種不同資料庫的api進行通訊。qsqlquery提供了直接執行任意sql語句的特性 此外還提供了兩個高層次的無需sql命令的資料庫介面 ...

QT 資料庫程式設計一

qt如果要進行網路程式設計首先需要在.pro中新增如下 qt network logindlg.h ifndef logindlg h define logindlg h include include include include class logindlg public qdialog en...

資料庫概述之資料庫程式設計

嵌入式sql程式設計例項 exec sql begin declare section 主變數說明開始 char deptname 20 char hsno 9 char hsname 20 char hs 2 int hsage int newage exec sql end delcare se...