sqlite3

  1. sqlite相关的命令

.tables 查看数据库中的表

.headers on/off 开启或者关闭表头

.mode column 列对齐

.width 列宽1 列宽2 设置每一列的列宽

.schema 表名 查看表的结构

  1. sqlite的SQL语句

每个sql语句后面必须要有一个;

INTEGER : 整形

REAL: 浮点型

TEXT:文本类型,字符串

NULL : 空

  1. 1.创建表

create table 表名(列名1 数据类型 ,列名2 数据类型, 类名3 数据类型) ;

2.2. 插入数据

insert into 表名 values(值1, 值2, 值3);

2.3. 查询

select 列名1,列名2 from 表名;

select * from 表名;

条件查找:

select * from 表名 where 列 关系运算符 值;

关系运算符:

like : 模糊匹配

% 可以通配多个字符

_ 只能通配一个字符

升序排列

select * from 表名 order by 列名 ASC;

降序排列:

select * from 表名 order by 列名 DESC;

    1. 删除一行

delect from 表名 where 列名 关系运算符 值;

    1. 删除一张表

drop 表名;

2.6. 修改

update 表名 set 列名=新值 where 列=值;

    1. 设置主键值自动增长列
  1. 主键值自动增长列的数据类型必须是INTEGER

  2. 类名 INTEGER PRIMARY KEY AUTOINCREMENT,

2.8 .多表联查

内连接 INNER JOIN

外连接 LEFT OUTER JOIN

  1. sqlite3提供的c/c++ API接口

int sqlite3_open(

const char *filename, /* Database filename (UTF-8) */

sqlite3 **ppDb /* OUT: SQLite db handle */

);

功能:打开数据库,如果不存在,则创建

参数:

filename : 数据库名称

ppDb :保存数据库句柄的地址

返回值:

成功:SQLITE_OK

失败:错误码

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

失败:错误码

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.每找到一行,回调被触发一次

  1. 回调函数必须返回0;

创建表格

查找

相关推荐
zzb158012 小时前
RAG from Scratch-优化-query
java·数据库·人工智能·后端·spring·mybatis
一只鹿鹿鹿13 小时前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
堕27413 小时前
MySQL数据库《基础篇--数据库索引(2)》
数据库·mysql
wei_shuo13 小时前
数据库优化器进化论:金仓如何用智能下推把查询时间从秒级打到毫秒级
数据库·kingbase·金仓
雷工笔记13 小时前
Navicat Premium 17 软件安装记录
数据库
wenlonglanying13 小时前
Ubuntu 系统下安装 Nginx
数据库·nginx·ubuntu
数据库小组14 小时前
10 分钟搞定!Docker 一键部署 NineData 社区版
数据库·docker·容器·database·数据库管理工具·ninedata·迁移工具
爬山算法14 小时前
MongoDB(38)如何使用聚合进行投影?
数据库·mongodb
l1t14 小时前
Deep Seek总结的APSW 和 SQLite 的关系
数据库·sqlite
Pocker_Spades_A15 小时前
基于代价模型的连接条件下推:复杂SQL查询的性能优化实践
数据库·sql·性能优化