嵌入式学习39-程序创建数据库及查找

1.sqlite3_open
    int sqlite3_open(
        const char *filename,   /* Database filename (UTF-8) */
        sqlite3 **ppDb          /* OUT: SQLite db handle */
    );
    功能:
            打开  数据库文件(创建一个数据库连接)
    参数:
        filename:                                                                                                                                                           数据库文件路径 
        ppDb:                                                                                                                                                          操作  数据库指针  存放空间的首地址
    返回值:
        成功  返回  SQLITE_OK
        失败  返回  错误码

2.sqlite3_close 
    int sqlite3_close(sqlite3*);
    功能:
        关闭  数据库连接

3.sqlite3_exec 
    int sqlite3_exec(
        sqlite3*,                                  /* An open database */
        const char *sql,                           /* SQL to be evaluated */
        int (*callback)(void*,int,char**,char**),  /* Callback function */
        void *,                                    /* 1st argument to callback */
        char **errmsg                              /* Error msg written here */
    );
    功能:
            执行一条SQL语句
    参数:
        sqlite3*:                                                                                                                                                           数据库  句柄

句柄:                                                                                                                                                         是一个用来  标识对象或者项目标识符,可以用来描述窗体、文件等                                             还有注意  句柄(Handle) 不是常量
        sql:                                                                                                                                                           要执行的  SQL语句  字符串首地址
        callback: (回调函数)                                                                                                                                     只有在  select  时才会使用           (匹配数据)                                                                                其余  调用时传递   NULL
        void*:                                                                                                                                                          给 回调函数  的  传参
        errmsg:                                                                                                                                                          出错信息   存放空间首地址  (使用完毕后使用sqlite3_free释放空间)
    返回值:
        成功  返回  SQLITE_OK
        失败返回错误码 

                                                      callback

strstr:子字符串查找

strstr函数声明:

char *strstr( const char *str1, const char *str2 );

练习:
    实现将dict.txt文件中的所有单词和含义插入到数据库中

5.调试段错误:
    1.根据给定链接设置系统允许生成core文件
    2.编译代码时加入-g选项
        gcc filename.c -g -lsqlite3 
    3.执行代码让代码产生段错误(会生成一个包含错误信息的core文件)
    4.使用gdb调试core文件
        gdb a.out core 
    5.可以直接看到产生段错误的代码的位置

6.html

meta:设置编码格式
 

相关推荐

  1. 嵌入学习day39 数据结构

    2024-03-18 00:40:01       13 阅读
  2. 嵌入学习day36 数据结构

    2024-03-18 00:40:01       22 阅读
  3. 嵌入学习35-网络通信UDP聊天TCP

    2024-03-18 00:40:01       20 阅读
  4. 嵌入学习day33

    2024-03-18 00:40:01       23 阅读
  5. 嵌入学习 Day 31

    2024-03-18 00:40:01       21 阅读
  6. 嵌入学习day35

    2024-03-18 00:40:01       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-18 00:40:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-18 00:40:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-18 00:40:01       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-18 00:40:01       20 阅读

热门阅读

  1. springBoot + mybatis + Vue3的前后端分离小demo

    2024-03-18 00:40:01       20 阅读
  2. 【C/C++ 学习笔记】内存

    2024-03-18 00:40:01       22 阅读
  3. 【C语言】等边等腰三角形的判断

    2024-03-18 00:40:01       21 阅读
  4. 【Git】git pull fatal: refusing to merge unrelated histories

    2024-03-18 00:40:01       23 阅读
  5. 【Vue2】v-model

    2024-03-18 00:40:01       19 阅读
  6. Git使用

    Git使用

    2024-03-18 00:40:01      15 阅读