在VS2022中使用SQLite3数据库

在vs2022中使用sqlite3数据库需要3个文件,sqite3.h、sqlite3.dll、sqlite3.lib。

第一步 下载sqlite3的相关文件

sqlite3官网:https://www.sqlite.org/download.html

需要下载2个东西,然后把它们解压到你指定的一个文件夹下,例如 D:\sqlite :

  • sqlite-amalgamation-xxxx.zip,xxxx是版本号,保持一致即可,这里面有sqite3.h;
  • sqlite-dll-win-x64-xxxx.zip,这里面有 sqlite3.dll 和 sqlite3.def(sqlite3.def将用来生成 sqlite3.lib );

如果你还需要命令行工具,可以下载 sqlite-tools-win-x64-xxxx.zip ,使用里面的 sqlite3.exe 的操作sqlite3数据库;

第二步 生成 sqlite3.lib

打开 Developer Command prompt for VS2022 (一般在开始菜单的Visual Studio 2022就可以找到),打开后,使用cd命令进入存放sqlite3相关文件的文件夹,接着输入

复制代码
lib /MACHINE:X64 /DEF:sqlite3.def

出现如上图所示"正在创建...",即生成成功

生成的 sqlite3.lib 将会出现在 存放sqlite3相关文件的目录 中,例如上图的 D:\sqlite。

第三步 配置VS2022项目

  1. 打开VS2022,新建个空项目。
  2. 添加包含头文件,点击 项目 - 属性 - C/C++ - 常规 - 添加包含目录 ,添加 存放sqlite3相关文件的目录。
  1. 将sqlite3.dll 添加到项目中,点击 项目 - 属性 - 链接器 - 常规 - 添加库目录 ,添加 存放sqlite3相关文件的目录。
  1. 将sqlite3.lib 添加到项目中,点击 项目 - 属性 - 链接器 - 输入 - 添加依赖项 ,添加 sqlite3.lib。
  1. 测试如下代码是否输出 Opened database successfully

    #include <sqlite3.h>
    #include
    int main(int argc, char* argv[])
    {
    sqlite3* db = nullptr; // 数据库对象
    char* zErrMsg = nullptr; // 错误信息
    int rc = 0; // 执行结果
    rc = sqlite3_open("test.db", &db);
    if (rc) {
    fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
    exit(0);
    }
    else {
    fprintf(stderr, "Opened database successfully\n");
    }
    sqlite3_close(db);
    return 0;
    }

相关推荐
Elastic 中国社区官方博客14 小时前
14 个 alerts,1 个 incident:使用 Elasticsearch 中的 ES|QL 衡量 alerting rule 噪声
大数据·运维·数据库·elasticsearch·搜索引擎·全文检索
资深技术分享员14 小时前
遗留系统——把“改不动的老系统“接过来
java·服务器·数据库
艾莉丝努力练剑14 小时前
【AI大模型接入SDK】ChatSDK 集成测试概述
jvm·c++·人工智能·学习·面试·集成测试·sdk
Joe_Wang515 小时前
【从0到1学习JVM · 14】堆内存各区域分工与Xms和Xmx设为一样的真相
java·jvm·学习·垃圾回收
AllData公司负责人15 小时前
AllData数据中台物联网实时平台|集成 Apache StreamPipes,MQTT工业物联网数据实时预警实践案例
大数据·数据库·人工智能·物联网·apache·工业物联网·streampipes
HwJack2015 小时前
【HarmonyOS开发小实践】HarmonyOS GC 引用计数 vs 对象追踪,三种回收算法
jvm·算法·harmonyos
在放️15 小时前
技术支持岗 · 笔试填空、问答题
数据库
oradh15 小时前
Oracle固定执行计划的方法----SQL Profie(二)
数据库·sql·oracle
Mortalbreeze15 小时前
MySQL 基础篇(二):数据库和数据表的基本操作
linux·服务器·数据库·mysql
Zenova EdgeOS15 小时前
工业网关心跳机制实战:Keepalive、应用层探活与健康判定
服务器·网络·数据库