Qt连接sqlite数据库
Qt连接sqlite数据库步骤
①添加数据库模块
QT += sql
②添加头文件
#include<QSqlDatabase>
#include<QSqlQuery> //sql查询语句
③建立连接
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
④关联数据库
注意:关联的数据库若不存在则会自动创建
db.setDatabaseName("关联数据库的路径");
⑤打开数据库
if(!db.open())
qDebug()<<"database open failed";
⑥执行sql语句,操作数据库
QSqlQuery* query = new QSqlQuery;
query->exec("sql语句");
如果不太清楚sql语句的可以翻看我SQL常用语句大全这篇文章,详细讲解了常用的sql语句SQL常用语句大全https://blog.csdn.net/m0_71741835/article/details/127624612
可能会遇到的错误
意思就是存在重复的连接名,旧的连接已删除,数据库所有查询停止工作
解决办法
将第③步代码修改为
if(QSqlDatabase::contains("qt_sql_default_connection"))db = QSqlDatabase::database("qt_sql_default_connection");elsedb = QSqlDatabase::addDatabase("QSQLITE");
解释
一般情况下,按照上面的步骤操作,就可以成功连接sqlite数据库了
但其实在第③步骤建立数据库的连接时,我们应该先判断是否存在默认连接,如果存在的话,返回这个默认连接,如果不存在才建立新的连接,添加数据库
上面代码中if语句就是在判断默认连接是否存在,qt_sql_default_connection这个就是Qt的默认连接名称,如果if判断这个默认连接存在,则返回这个默认连接,否则才建立新的连接,设置驱动,添加数据库,QSQLITE是sqlite数据库对应的驱动名
注意:addDatabase()的第二个参数被省略了,第二个参数就是数据库的连接名,默认的话就是Qt的默认连接名称qt_sql_default_connection,如果需要同时操作多个数据库,这个参数就不能省略了,就必须自定义连接名了,然后在定义QSqlQuery对象时要指定连接名来指定操作的是哪个数据库
db = QSqlDatabase::addDatabase("QSQLITE","connection_1");
这个时候,如果在另一个地方需要判断connection_1连接是否存在,就应该使用
if(QSqlDatabase::contains("connection_1"))
...
这篇文章对你有帮助的话~就点个赞吧~
点赞收藏关注就是对我最大的支持~
谢谢你们~
Qt连接sqlite数据库相关推荐
- Qt操作SQLite数据库的三种方式
Qt访问Sqlite数据库的三种方式(即使用三种类库去访问),分别为QSqlQuery.QSqlQueryModel.QSqlTableModel,对于这三种类库,可看为一个比一个上层,也就是封装的更 ...
- 详解Ubuntu10.10下Qt连接Mysql数据库
转载自:http://mobile.51cto.com/symbian-273262.htm 详解Ubuntu10.10下Qt连接Mysql数据库是本文要介绍的内容,很详细的步骤,我们先来看内容. 第 ...
- qt 连接mysql数据库_QT连接MYSQL数据库教程
QT连接MYSQL数据库教程 最近购买了阿里云Linux服务器,处于自学需要安装了MYSQL5.7. 准备用QT开发个小工具,在使用QT提供的标准类连接MYSQL库的时候一直爆出无法加载MYSQL驱动 ...
- QT读写Sqlite数据库三种方式
QT对一些基本的数据库的访问封装,可谓是极大的方便的我们开发人员,现在我们就来说下QT对Sqlite这个数据库的读写,Sqlite是一个比较小型的本地数据库,对于保存一些软件配置参数或量不是很大的数据 ...
- python连接sqlite数据库的代码_Python3实现连接SQLite数据库的方法
本文实例讲述了Python3实现连接SQLite数据库的方法,对于Python的学习有不错的参考借鉴价值.分享给大家供大家参考之用.具体方法如下: 实例代码如下: import sqlite3 db ...
- power bi连接mysql_一起学微软Power BI系列-使用技巧(6) 连接Sqlite数据库
阅读目录1.ODBC驱动 2.Power BI Desktop连接Sqlite 3.资源 好久没有研究Power BI了,看到高飞大神弄的东西,太惭愧了.今天有个小东西,数据在Sqlite里面,想倒腾 ...
- VS2010上连接SQLite数据库
VS2010连接SQLite数据库 Visual studio 2010及以上版本,连接SQLite数据库 1.在Sqlite开发站点下载SQLite的.exe安装包 Ctrl+F搜索这条语句:Thi ...
- 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(二、编译连接)
本篇教程分为三个部分: [全教程]qt连接mysql--从qt编译mysql驱动到qt连接mysql数据库(一.编译连接前准备) [全教程]qt连接mysql--从qt编译mysql驱动到qt连接my ...
- QT 访问sqlite数据库
QT 访问sqlite数据库 1.sqlite数据库安装 首先,通过sqlite3命令查看 sqlite数据库是否已经安装,若没有安装,则通过 sudo apt install 指令进行安装. 2.准 ...
最新文章
- Android APK加壳技术方案----代码实现
- 【PC工具】更新文件夹多文件群体比较工具WinMerge
- mysql还原数据报错:
- 一个程序猿必须掌握的HTML的常识
- 研究生必备自学课程!打好科研的数学基础与机器学习基础!
- java的Junit单元测试
- 大数据爆炸改变企业的决策
- vs2008打开aspx文件时设计界面死机情况的解决
- 170517、Redis 的安装与使用(单节点)
- 课改 计算机 论文,计算机论文 计算机应用课改分析
- Windows 10 64位系统中安装加密狗驱动出现the returncode is 3003错误的解决方法
- 四元数与欧拉角(数学推导)
- 【Java】各种日期转换
- 2020年中国包子行业现状及竞争格局分析,未来行业集中度将进一步提升「图」
- 计算机职业生涯测评,皮纹检测职业版——职业生涯规划指南测评系统
- 汉高任命荣杰博士为大中华区总裁;沃尔玛中国2021届校招正式启动 | 美通企业日报...
- 零零散散之Java异常
- 16路彩灯控制器 FPGA-Verilog
- 无障碍感受 北京之美
- 基于网络分析和文本挖掘的意见领袖影响力研究