Qt + SQLite 配置与使用指南

Qt + SQLite 配置与使用指南

1.1 Qt 工程配置(.pro 文件)

打开项目的 .pro 文件,在原有模块后追加 sql:

QT += core gui serialport sql

必须重新执行 qmake :在 Qt Creator 中右键项目 → 执行 qmake,然后重新构建。否则编译器会报找不到 QSqlDatabase 等头文件。

验证 SQLite 驱动是否加载成功,可在 main.cpp 或任意窗口中加一段测试代码:

#include <QSqlDatabase>
#include <QDebug>

*//*打印所有可用的数据库驱动
qDebug() << QSqlDatabase::drivers();
*//*正常应输出列表中包含 "QSQLITE"

若列表中没有 QSQLITE,请检查:

  1. 是否正确添加了 QT += sql 并重新 qmake。
  2. 若使用静态编译的 Qt,需要手动链接 SQLite 插件;动态编译的 Qt(官方安装版默认)通常自带。

1.2 SQLite 可视化工具安装(DB Browser for SQLite)

项目运行后会生成 .db 文件,直接用文本编辑器打开是乱码,建议安装可视化工具查看。

推荐工具:DB Browser for SQLite
  • 官网下载https://sqlitebrowser.org/dl/
  • Windows 用户直接下载 DB.Browser.for.SQLite-v3.x.x-win64.exe 安装包,按向导安装即可。
基本使用步骤
  1. 打开数据库文件 :点击 打开数据库,选择项目运行目录下的 device_data.db。
  2. 浏览数据 :切换到 浏览数据 标签,选择表 device_data,即可查看所有已存储的记录。
  3. 执行 SQL :切换到 执行 SQL 标签,可手写查询语句,例如:
  1. * FROM device_data ORDER BY timestamp DESC LIMIT 10;
  1. 导出数据 :在 浏览数据 界面右键 → 导出结果,可导出为 CSV/Excel,方便后续分析。

替代工具:SQLiteStudio(https://sqlitestudio.pl),功能类似,按个人习惯选择即可。


1.3 常见环境排错

|-----------------------------------------|-------------------------|----------------------------------------------------|
| 现象 | 原因 | 解决 |
| QSqlDatabase: QSQLITE driver not loaded | 未加 QT += sql 或未重新 qmake | 检查 .pro,重新 qmake → 重新构建 |
| 程序启动后找不到 .db 文件 | 使用的是相对路径 device_data.db | 文件实际生成在可执行程序所在目录(build 目录),而非源码目录,但可使用代码指定生成目录 |
| 可视化工具提示数据库被锁定 | Qt 程序正在运行并占用数据库 | 关闭 Qt 程序后再用 DB Browser 打开,或在代码中使用 m_db.close() 后查看 |

相关推荐
码上有光1 小时前
c++模板进阶知识讲解(对模板的进一步的运用与理解)
java·前端·c++·特化·模板进阶·偏特化
Zhang~Ling1 小时前
C++ 继承机制详解下:多继承、虚继承与菱形继承底层原理
开发语言·c++·算法
思麟呀1 小时前
C++工业级日志项目(四)日志落地
linux·开发语言·c++·windows
哼?~2 小时前
C++11 并发支持库中 atomic
c++
我在人间贩卖青春2 小时前
重学Qt——串口编程
qt
玖釉-2 小时前
单词搜索:二维网格中的 DFS 回溯与剪枝优化
c++·windows·算法·深度优先·剪枝
吴可可1232 小时前
C++与C#版Teigha样条离散化差异解析
c++·算法·c#
搬砖的小码农_Sky2 小时前
macOS Sequoia上如何安装gcc/g++环境?
c语言·c++·macos
MC皮蛋侠客2 小时前
C++17 多线程系列(二):共享数据与同步——mutex 与 condition_variable
开发语言·c++·多线程