• vs2017 vs2019配置sqlite3连接引擎(驱动)指南(一)vs2019篇


    特此鸣谢作者 https://blog.csdn.net/qq_37596943/article/details/104058508本篇一部分内容受他启发  

    这几天,内心忽然洋溢着用C语言写个游戏配置文件编辑小程序,再配上个sqlite3轻型数据库,多么美好美妙啊,想到这我的内心快乐的歌唱起来,But,程序员的宿敌------“开发环境配置恶魔”却狞笑着说“hehehehehehehehehehehe想的倒美,本宫要不让你产生点去安定医院看门诊的冲动,休想配置成功......”

    这一切当然得归功于我们可爱的微软,奋(吃)发(饱)向(了)上(撑),推(的)陈出新。

    实际上从sqlite3的C语言操作语法来说,变化并不大,但跟所有的数据库产品一样,驱动的配置变化还是很频繁,先给出连接成功的测试代码

    环境:win10  vs2019 sqlite3.31.1

    • 先奉上vs2019测试代码 你在网上搜到很多帖子,他们保准告诉你包含sqlite3.h,但是vs2019可不care,他会告诉你“他妈的sqlite3.h是什么东西,老子不看!”
    #define _CRT_SECURE_NO_WARNINGS
    #include<stdio.h>
    #include<stdlib.h>
    #include <winsqlite/winsqlite3.h> //看这,最关键
    int main()
    {
        sqlite3* slt;
        int len;
        len = sqlite3_open("user", &slt);
        if (len)
        {
            /*  fprintf函数格式化输出错误信息到指定的stderr文件流中  */
            fprintf(stderr, "Can't open database: %s
    ", sqlite3_errmsg(slt));//sqlite3_errmsg(db)用以获得数据库打开错误码的英文描述。
            sqlite3_close(slt);
            exit(1);
        }
        else printf("You have opened a sqlite3 database named user successfully!
    ");
    
        system("pause");
        return 0;
    }
    • 配置n部曲(vs2019)

    1.下载sqlite3

    注意,这一步坑就开始了-----根据vs版本不同,文件的需求有所不同,先说vs2017,vs2019都需要的(见下图):根据需要你可以选择32位或者64位的连接驱动(连接引擎)文件,但是无论如何:tools里的文件是成功安装sqlite3数据库前提

     tools里的文件

     32位或64位的扩展文件包含:

     用法:笔者是在C盘根目录下建了一个sqlite3文件夹,上述文件全放进去,接下来把这个目录放入环境变量中去

     

     运行命令cmd,输入sqlite3

     第一步完成!

    槽点1:sqlite3.exe作为一个主程序文件,居然名为tools!那好吧,以后我跟麦当劳店员说,给我来两包番茄酱,那我的袋子里肯定能多两份薯条-----一看sqlite3开发组的语文都是计算机老师教的。

    2.用vs安装目录下的lib.exe编译sqlites扩展文件

    读到这,你可能会像毛利小五郎那样睁圆眼睛,蹦出一句“纳尼?!!”,没错,找到你的vs2019安装目录,如果你用的是C或者C++语言,并且十分听话的按默认路径安装的vs,那么很可能目录是 

    C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.24.28314inHostx64x64

    上述目录下有个lib.exe,接下来用它编译sqlite3扩展目录下的扩展文件(当然,你需要把sqlite3.dll 和sqlite3.def放到这个文件下)(推荐:你也可以把x64文件夹单独复制出来,再放入两个扩展文件,编译)

    ----我是单独复制出来的,并且把编译好的sqlite3.lib放入了我的数据库安装目录下,这并无严格限定

    运行-cmd

    cd C:Program Files (x86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.24.28314inHostx64x64
    或者cd 到你单独复制出来的x64文件夹下面
    LIB /MACHINE:IX86 /DEF:sqlite3.def

    这样会生成两个文件,其中sqlite3.lib是关键

     槽点2:编译操作复杂程度,堪比绝命毒师从康泰克里提取冰毒

    第二步完成!

    3.vs项目里引入

    选中项目(不是解决方案)---属性---链接器---常规----附加库目录,选中存放sqlite3.lib的目录

    接下来找到输入---附加依赖项 填写 sqlite3.lib

     .......总算完成了,接下来就是运行一段文章开头提到的代码

    槽点3:这哪里是连接轻巧方便可爱的sqlite3数据库,这tm简直是在连接北美防空司令部的空情数据库呢,这......

    先写到这,达斯维达尼亚,各位

  • 相关阅读:
    优先队列插入、删除
    堆排序
    UVALive 2474 Balloons in a Box(枚举)
    二叉树的建立、四种遍历、求深度、求叶子结点数
    说说尾递归(转载)
    1#Two Sum(qsort用法)
    马克思:青年在选择职业时的考虑
    最要紧的是,我们首先要善良,其次是要诚实,再次是以后永远不要相互遗忘。
    多重背包优化算法
    poj2976 Dropping tests(01分数规划 好题)
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/12372060.html
Copyright © 2020-2023  润新知