QT版本:QT 5.14
一、核心代码
1.头文件代码
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QGridLayout> //布局控件
#include <QTableView> //表格控件
#include <QtSql/QSqlTableModel> //表格model
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
private:
QGridLayout *hLayout=nullptr; //布局控件
QTableView *tableView=nullptr; //表格控件
QSqlTableModel *model=nullptr; //表格model
};
#endif // WIDGET_H
2.实现代码
#include "widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
QSqlDatabase db=QSqlDatabase::addDatabase("QSQLITE"); //添加并获得一个SQLITE数据库连接
model = new QSqlTableModel(this,db); //创建model对象并绑定数据库连接
tableView = new QTableView(this); //创建表格控件对象
hLayout = new QGridLayout(this); //创建栅格布局器对象
setLayout(hLayout); //把布局器设置到显示窗口
hLayout->addWidget(tableView); //把表格控件添加到布局器中使表格能随窗口大小自动调整
tableView->setModel(model); //把model绑定到tableView
model->database().setDatabaseName("./data.db"); //设置数据库名称(事先要把数据库文件放到debug目录下)
if(model->database().open()) //打开数据库
{
model->setTable("sumData"); //设置数据表的名称(事先要知道数据表的名称)
model->select(); //从数据表读取全部数据
}
}
Widget::~Widget()
{
}
二、代码验证
1.把要浏览的data.db复制到exe同级目录,如果QT在debug模式,就复制到debug文件夹下
2.运行程序,就能看到数据库中的内容了