在Qt5中SQLite3的使用

这篇具有很好参考价值的文章主要介绍了在Qt5中SQLite3的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、SQLite简要介绍

什么是SQLite

SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,您不需要在系统中配置。

就像其他数据库,SQLite 引擎不是一个独立的进程,可以按应用程序需求进行静态或动态连接。SQLite 直接访问其存储文件

为什么要用SQLite

SQLite作为轻量级开源数据库软件,目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快!

  • 不需要一个单独的服务器进程或操作的系统(无服务器的)。
  • SQLite 不需要配置,这意味着不需要安装或管理。
  • 一个完整的 SQLite 数据库是存储在一个单一的跨平台的磁盘文件。
  • SQLite 是非常小的,是轻量级的,完全配置时小于 400KiB,省略可选功能配置时小于250KiB。
  • SQLite 是自给自足的,这意味着不需要任何外部的依赖。
  • SQLite 事务是完全兼容 ACID 的,允许从多个进程或线程安全访问。
  • SQLite 支持 SQL92(SQL2)标准的大多数查询语言的功能。
  • SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。
  • SQLite 可在 UNIX(Linux, Mac OS-X, Android, iOS)和 Windows(Win32, WinCE,WinRT)中运行。

SQLite下载

1.SQLite官方下载链接:SQLite Home Page
所需要的四个文件如下如图所示:
在Qt5中SQLite3的使用,QT专栏,qt,sqlite,开发语言

二、在Qt5中使用步骤

第一步:导入sqlite3相关文件

在Qt5中SQLite3的使用,QT专栏,qt,sqlite,开发语言

2. 新建两个文件夹:

db:用于存放数据库文件(.db)
lib:用于存放lib文件(好处:易于区分后面继续添加其他的lib文件)
在Qt5中SQLite3的使用,QT专栏,qt,sqlite,开发语言
第二步:打开qt 修改 .pro文件,添加SQL模块
其实在我们上上述引用lib的时候就已经把库添加进来了。
在Qt5中SQLite3的使用,QT专栏,qt,sqlite,开发语言
第三步:简单测试一下 打开、关闭数据库

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    initDb();
}

Widget::~Widget()
{
    delete ui;
}

Widget::initDb()
{
    sqlite3 *sqldb=nullptr;
    //打开数据库
    int res = sqlite3_open("db/video.db", &sqldb);
    if(res == 0)//打开成功
    {
        qDebug()<<"open dataBase success!"<<endl;
    }
    else
    {
        qDebug()<<sqlite3_errcode(sqldb)<<endl;
        qDebug()<<sqlite3_errmsg(sqldb)<<endl;
    }

    //关闭数据库
    res = sqlite3_close(sqldb);
    if(res!=0)
    {
        qDebug()<<sqlite3_errcode(sqldb)<<endl;
        qDebug()<<sqlite3_errmsg(sqldb)<<endl;
    }
}

技术公众号,请大家关注
在Qt5中SQLite3的使用,QT专栏,qt,sqlite,开发语言文章来源地址https://www.toymoban.com/news/detail-705575.html

到了这里,关于在Qt5中SQLite3的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 软件设计开发笔记4:QT操作SQLite数据库

      有时候我们需要在软件中记录一些历史数据以便于对数据的查询。而我们希望软件不能太复杂,体量也不要太大,这个时候就需要如SQLite这样轻量级的数据库。这篇中我们就来讨论如何在使用QT开发应用是操作SQLite数据库。   SQLite是一款开源、轻量级、跨平台的数据库

    2024年02月09日
    浏览(50)
  • QT里使用sqlite的问题,好多坑

    1. 我使用sqlite,开发机上好好的,测试机上却不行。后来发现是缺少驱动(Driver not loaded Driver not loaded),代码检查了又检查,发现应该是缺少dll文件(系统不提示,是自己使用 QMessageBox::warning(NULL, (\\\"error\\\"), database.lastError().text());后猜到的)。于是自己千方百计的想办法,反复

    2024年02月09日
    浏览(31)
  • QT+SQLite数据库配置和使用

    一、简介 1.1 SQLite(sql)是一款开源轻量级的数据库软件,不需要server,可以集成在其他软件中,非常适合嵌入式系统。Qt5以上版本可以直接使用SQLite(Qt自带驱动)。 二、下载和配置 2.1 SQLite下载官网下载链接 2.2 根据计算机的配置,选择所需项目是64位还是32位下载对应的压

    2024年02月06日
    浏览(39)
  • qt 中sqlite的性能优化与使用问题

      SQLite 只支持一个并发的写入操作,但是多个进程可以同时连接和查询相同的数据库。 通过一些简单的配置和操作,我们完全可以使用 SQLite 创建 GB 级别的数据库并且支持高达每秒 10 万次的并发查询。 优化 SQLite 性能的配置如下: pragma journal_mode = WAL; 使用WAL而不是回滚日

    2024年02月02日
    浏览(22)
  • QT使用SQLite 超详细(增删改查、包括对大量数据快速存储和更新)

    在QT中使用sqlite数据库,有多种使用方法,在这里我只提供几种简单,代码简短的方法,包括一些特殊字符处理。在这里也给大家说明一下,如果你每次要存储的数据量很大,建议使用事务(代码中有体现),万条数据不到一秒吧。 数据库中有两个表一个是 class 和 student 。

    2024年02月03日
    浏览(34)
  • Qt SQLite简单用法

    感觉自己老是会忘记需要百度,干脆直接记下来 Qt5.14.2 + MSVC2017(VS2019) Qt Creator: VS: . SQLite与其他数据库不同,其他数据库是静态数据类型,即创建时便确定以后插入的数据类型; 而SQLite是动态数据类型,即即使表格声明了类型,其插入不同的数据类型依然不受影响,只是会优

    2024年02月12日
    浏览(33)
  • QT Sqlite 内存模式 简单读写

    //本文描述了QT Sqlite 内存模式 ,使用QT 自带库文件,写入和读取。 //QT 6.2.4 MSVC2019调试通过。 //需要在pro文件中加入 QT += sql #include QCoreApplication #include QSqlDatabase #include QSqlQuery #include QDebug #include QSqlDriver //#include QSqlError //#include QStringList //#include QVariant static bool createConnection(

    2024年04月25日
    浏览(24)
  • 5、QT中SQLite数据库的操作

    执行数据库操作的类: SQLite3的基础教程 ①、创建数据库的链接对象: ②、使用数据库驱动 ③、设置数据库的名称(创建一个数据库) ④、创建一张表 例子: 例子: ①、遍历所有数据并保存 ②、对比数据 例子: 查询数据的时候,必须要先把遍历的数据保存在sqlQuery类中

    2024年02月09日
    浏览(38)
  • QT-sql操作(sqlite数据库文件)

        #include SqlDriver 如名称,数据库驱动。 hasFeature : 检查驱动是否支持特定功能,如事务、批处理等。 isQuerySize : 驱动是否支持  QSqlQuery::size  函数。 open 、 close : 打开和关闭数据库连接。 isOpen : 判断数据库连接是否处于打开状态。 commitTransaction 、 rollbackTransaction :

    2024年02月04日
    浏览(39)
  • 【QT+QGIS跨平台编译】之一:【sqlite+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

    SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它

    2024年01月22日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包