Qt本地数据库开发
摘要:Qt因其易用、易扩展、跨平台等特性,日渐成为流行的开发框架,该文通过实例介绍了在Qt开发中对于本地数据库sqlite编程的方法。
关键词:Qt;数据库;sqlite
中图分类号:TP3
文献标识码:A
文章编号:1009-3044(2017)10-0004-02
Qt是1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架,经过20多年的发展完善,以其易用性、易扩展性以及跨平台等特点,日渐成为流行的GUI开发框架,其完善的架构和丰富的组件可以使得程序员主要关注于业务逻辑,而不必过多的将精力和时间耗费在繁琐复杂的界面开发上。在实际开发中,大多数应用都需要用到数据库技术以管理各种信息,Ot为此也提供了相应的模块和组件,使得对数据库的开发也变得非常简单。
根据数据规模以及网络架构,数据库大体上分为本地数据库和网络数据库两种,本文主要介绍本地数据库sqlite的开发方法。在Qt中,通过QtSql模块提供与平台以及数据库种类无关的数据库接口,该接口通过模型腻图结构将数据库和用户界面集成在一起。对于不同的数据库,
Qt使用不同的驱动程序与数据库API进行通信,从而为程序员提供统一的开发接口。在进行本地数据库开发时,使用的是SQLite,对应的驱动程序为QSQLITE。
第一行通过addDatabase("QSQLITE")设置使用sqlite本地数据库,第二行设置数据库名为"",如果这个数据库文件不存在则新建,如果存在则打开。这里的数据库文件名可以通过相对路径或绝对路径来指定。如果是使用网络数据库,则需要?~外设置数据库主机名、用户名、密码等。
在打开数据库后,主角QSqlQuery便要登场了,这是我们使用频率最多的一个类,它提供了直接执行任意SQL语句并处理其结果的功能,常规数据库管理的增、删、改、查都可以通过该类完成。下面是一个完整例子:
如果我们只需要在代码中对数据库进行操作并且熟悉SQL语言,那么QsqlQuery就可以基本满足所有需求了;如果需要进一步将数据和用户界面进行互动,比如在表格中显式查询结果,有两种方式可以完成这个需求:;
。QsqlQueryModel/QSqlTableModel类是Qt所提供的一个高级界面接口,让我们直接使用用户界面来执行SQL语句所完成的功能,这可以使得数据管理操作更为简洁,两个类的区别在于:QSqlQueryModel类是只读的,QSqlT-ableModel类是可以修改表数据的。同时,QSqlQueryModel/QSqlTableModel类可以作为QTableView或者QListView的数据源,我们可以根据需要来选择合适的界面组件。下面是一个完整的例子:
例2:
通过这个例子我们
Qt本地数据库开发 来自淘豆网m.daumloan.com转载请标明出处.