Qt操作Access数据库
来源:互联网 发布:app inventor 数据库 编辑:程序博客网 时间:2024/06/02 16:45
http://blog.csdn.net/xysq/article/details/3950722
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 <QtSql>。
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={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=test.mdb",test.mdb为Access数据文件名。
好了,用代码来对test.mdb数据库的访问。
void MainWindow::connectDB()
{
//获取是否存在有数据库连接
QSqlDatabase dbconn = QSqlDatabase::database("test", false);
if(dbconn.isValid())//存在连接直接退出
{
return;
}
//创建一连接名为"test"的数据库连接
dbconn = QSqlDatabase::addDatabase("QODBC", "test");
QString dsn = QString("DRIVER={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=test.mdb");
dbconn.setDatabaseName(dsn);
}
//查询数据库数据
void MainWindow::queryDB()
{
//获取连接名库"test"的连接
QSqlDatabase dbconn = QSqlDatabase::database("test", false);
dbconn.open();
QSqlQueryModel q;
q.setQuery(tr("SELECT * FROM companyinfo"),dbconn);
}
- Qt操作Access数据库
- QT中操作数据库(ACCESS、MySql)
- QT中操作数据库(ACCESS、MySql)
- QT中操作数据库(ACCESS、MySql)
- QT对access数据库进行操作
- qt 连接access数据库
- access数据库操作类
- C#操作ACCESS数据库
- c#操作ACCESS数据库
- Access数据库SQL操作
- Access数据库SQL操作
- JSP操作Access数据库
- CDaoDatabase操作access数据库
- C#操作ACCESS数据库
- c#操作Access数据库
- C# 操作ACCESS数据库
- ASP操作access数据库
- C# 操作ACCESS数据库
- spark源码编译
- input表单获取值
- 个人开发者的酸甜苦辣
- IPv6的被请求节点的组播地址
- 关于C++中类的默认赋值操作符
- Qt操作Access数据库
- 马云妻子露面撰文:曝光马云儿子信息
- 中国最小黑客:为不做作业 黑掉学校系统
- gitweb无法访问android仓库中的某一个git project
- C/C++语言void及void指针深层探索
- listview的某个item选中后,条目颜色不消失。(实现方法一)
- 笔试、面试重点总结:WIN32、MFC与Linux
- 李亚鹏离婚前写给王菲的信疯传 内容矛盾
- 生成dll文件以及python对DLL中函数的调用(参数类型以及返回值)