当前位置: 首页 > article >正文

Linux:SQLite 数据库

1. SQLite相关命令

  • .tables:查看数据库中的表
  • .headers on/off:开启或关闭表头显示
  • .mode column:设置输出模式为列对齐
  • .width 列宽1 列宽2:这个命令实际上是.width 列名1 列宽1 列名2 列宽2,用于设置特定列的宽度
  • .schema 表名:查看表的结构

2. SQLite的SQL语句

基本数据类型
  • INTEGER:整形
  • REAL:浮点型
  • TEXT:文本类型,字符串
  • NULL:空
  • SQL 操作
  • 创建表:CREATE TABLE 表名 (列名1 数据类型, 列名2 数据类型, ...);
  • 插入数据:INSERT INTO 表名 VALUES (值1, 值2, ...); 或 INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);
  • 查询:
    • SELECT 列名1, 列名2 FROM 表名;
    • SELECT * FROM 表名;
    • 条件查找:SELECT * FROM 表名 WHERE 列名 关系运算符 值;
  • 模糊匹配:SELECT * FROM 表名 WHERE 列名 LIKE '内容%';
  • 排序:
    • 升序:SELECT * FROM 表名 ORDER BY 列名 ASC;
    • 降序:SELECT * FROM 表名 ORDER BY 列名 DESC;
  • 删除数据(注意这里是删除数据行,不是列):DELETE FROM 表名 WHERE 列名 关系运算符 值;
  • 删除表:DROP TABLE 表名;
  • 修改数据:UPDATE 表名 SET 列名 = 新值 WHERE 列名 = 条件值;
  • 设置主键值自动增长:确保主键列是INTEGER PRIMARY KEY AUTOINCREMENT
  • 多表联查:使用INNER JOINLEFT OUTER JOIN

3. SQLite3提供的C/C++ API接口

  • sqlite3_open:打开(或创建)数据库
  •  const char *filename,   /* Database filename (UTF-8) */
      sqlite3 **ppDb          /* OUT: SQLite db handle */
    );
       
  • 功能:打开数据库,如果不存在,则创建
  •     参数:
  •                filename : 数据库名称
  •                ppDb   :保存数据库句柄的地址   
        返回值:
                   成功:SQLITE_OK
                   失败:错误码  
  • sqlite3_exec:执行SQL语句
    • int sqlite3_exec(
        sqlite3*pdb,                                  /* An open database */
        const char *sql,                           /* SQL to be evaluated */
        int (*callback)(void*,int,char**,char**),  /* Callback function */
        void *arg,                                    /* 1st argument to callback */
        char **errmsg                              /* Error msg written here */
      );
      功能:执行sql语句
      参数:
                pdb : 数据库句柄
               sql : 要执行的sql语句的首地址
              callback : 当执行select语句时,使用到
              arg:当执行select语句时,使用到,传递给回调函数的第一个参数
             errmsg :存储错误信息的地址                             
      返回值:
                    成功:SQLITE_OK
                     失败:错误码  
    • callback函数
    • int (*callback)(void*,int column_cnt,char**column_value,char**column_name), 

      int callback(void* arg, int , char **, char **);
      功能:在使用sqlite3_exec执行select语句时, 每查找到一条数据,则调用一次回调
      参数:
               arg : sqlite3_exec传递的第4个参数
               column_cnt: 查找到的数据的列数
               column_value:  查找到的一行数据的每一列值的地址的集合
               column_name:查找到的一行数据的每一列列名的地址的集合
      返回值:
                0

      注意:1.每找到一行,回调被触发一次
                 2. 回调函数必须返回0;


http://www.kler.cn/a/287078.html

相关文章:

  • python milvus及curl命令进行query请求
  • opencv在图片上添加中文汉字(c++以及python)
  • AnnData对象数据结构解释:n_obs × n_vars
  • 抽奖系统(4——活动模块)
  • 数据结构——AVL树的实现
  • 【KOA框架】koa框架基础及swagger接口文档搭建
  • 安卓13 鼠标右键作返回键,鼠标事件修改
  • Vidda电视X Ultra等加入能效补贴,京东天猫可买量大管饱
  • 【验证码逆向专栏】某某滑块逆向分析
  • Java常见设计模式
  • 第二证券:三大因素将共同推动悲观情绪修复 风格阶段性趋于平衡
  • 【算法】二分查找
  • ARM32开发——(二十一)ADC系统工作原理
  • MobaXterm 终端工具使用
  • 【JVM】执行引擎、JIT、逃逸分析(二)
  • SQLite3 数据库
  • 【Python机器学习】NLP分词——词的“情感”
  • 力扣1353.最多可以参加的会议数目
  • 集成电路学习:什么是FPGA现场可编程门阵列
  • 官方宣布Navicat免费使用!
  • docker快速安装node
  • 反爬虫策略收录集
  • Harbor部署docker私人仓库
  • 解决npm下载依赖速度慢的问题
  • 用python启动nacos和redis
  • 蓝色炫酷碎粒子HTML5导航源码