sqlite3基本操作/数据库编程

sqlite3基本操作

1.创建:

复制代码
	create  table  student(id  integer, name  text,  sex  text,  age  integer);

2.查询:

复制代码
	select  *from  student:查看所有属性列表
	select  id , name  from  student:查看特定属性
	select  id, name  from  student  where  name  '张%':查看特定属性的特定行
	select  *from  student  order  by  age  desc:查看按照特定属性的顺序查看全部属性

3.插入:

复制代码
	delete  student  where  age>25:删除年龄大于25的行

sqlite3显示:

复制代码
	.mode column:对齐显示
	.headers  on:显示表头

关系型数据表:

复制代码
	不同表之间的关系通过外键来传递
	一对一关系:一个表中的一行,对应另一表中的一行
	一对多关系:一个表中的一行,对应另一表中的多行
	多对多关系:多行对应多行

主键:

复制代码
	是关系型数据表中的一列
	主键在一个表中必须唯一
	不能为空

外键:

复制代码
	外键约束:允许一个表中的键来引用另一个表中的键

多表联合查询

交叉连接:

复制代码
	cross  join:将表1中每一项与表二的所有项连接获得一张新表

内连接:

复制代码
	inner  join:将表1和表2中所有同时满足条件的数据关联在一起

外连接:

复制代码
	outer  join:返回两个表中所有匹配的记录

数据库编程

sqlite3_open:

复制代码
	sqlite3_open("studnet.db",&pDb);
	打开数据库文件,可用数据库文件的句柄来操作此数据库文件

sqlite3_exec:

复制代码
	sqlite3_exec(pDb,tmpbuff,NULL,NULL,&perrmsg);
	通过数据库文件句柄,向数据库文件写入命令
	回调函数用来处理查询结果
	第三个参数为回调函数的数据情况
	第四个参数用来存储错误信息

sqlite3_close:

复制代码
	关闭数据库文件的
相关推荐
Muscleheng9 小时前
Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错
数据库·postgresql
罗超驿9 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-10 小时前
Redis 命令
数据库·redis·缓存
小江的记录本10 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
June`10 小时前
多线程redis下如何解决aof重写和rdb持久化的数据一致性问题
数据库·redis·缓存
二宝哥11 小时前
离线安装maven
java·数据库·maven
SZLSDH11 小时前
场景适配论 | 数字孪生IOC建设中渲染技术与智能体能力的协同逻辑
前端·数据库·ai·数字孪生·数据可视化·智能体
这个DBA有点耶11 小时前
SQL改写实战:子查询、CTE、窗口函数性能对比
数据库·mysql·性能优化
@我漫长的孤独流浪11 小时前
数据库完整性约束全解析:从理论到实践
数据库
l1t11 小时前
DeepSeek总结的 DuckDB 1.5.3:并非普通的补丁版本
数据库·duckdb