1【sqlite】安装
1.让虚拟机能够上网
2.【apt-get】工具集配置好
3.【sudo apt-get install sqlite3】
4.启动【sqlite3】 【sqlite3】
5.输入【.quit】退出
2数据库简介
2.1常见的几种数据结构及数据库
1.数组、链表、文件、数据库(1)存储位置及存储器:数组、链表:内存存放数据的方式(代码运行结束、关机数据丢失)文件、数据库:外存存放数据的方式(代码运行结束、关机数据不会丢失)(2)数据量及数据处理效率:文件:数据量很小,处理效率很低数据库:数据量很大,处理数据(增删改查)效率高
3【SQL】命令
1.打开/关闭数据库中列名称:【.headers on/off】
2. 设置输出模式:【.mode csv/column/html/insert/line/list/tabs/tcl】
3. 查看表名称对应的表的格式:【.schema+表名称】 详解:有哪几列?每一列类型?
4.设置显示时的数据宽度 :【.width 宽度】
5.查看数据库文件中的所有表:【.tables】
4【SQL】语言
实现数据的:增、删、改、查
4.1使用【sqlite3】打开数据库文件
【sqlite3 数据库文件名】
示例:【sqlite3 ./student.db】
4.2创建表
【create table】
示例:【sqlite> create table student (id integer primary key asc, name varchar(255), sex varchar(32), age integer, score integer);】
4.3插入数据
【insert into】
示例:
【sqlite> insert into student values (1001, "张三", "男", 19, 80);】
【sqlite> insert into student (id, name, score) values (1002, "李四", 100);】
【sqlite> insert into student values (1002, "王二", "女", 18, NULL);】
4.4查找数据
【select】
示例:
【sqlite> select * from student;】
【sqlite> select name, score from student;】
4.5内容匹配
【where】
示例:
【sqlite> select * from student where name like "%张%";】
4.6主键
key:键值
内键:在表中唯一标识一条数据称为内键
外键:与外部表进行标识的数据称为外键
4.7删除
【delete from】
示例:
【delete from student where name="李四";】
4.8修改
【update】
示例:
【update student set sex="男",age=19 where name="王二";】
4.9排序
【order by】
示例:
【select * from order_manager order by ordertime desc;】
4.10多表联合查询
4.10.1交叉链接
【cross join】
示例:
【sqlite> select student.name as 学生姓名, lesson.name as 课程名
...> from student cross join lesson;】
4.10.2内链接
【inner join】
示例:
【sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from score inner join student on score.stuid=student.id;】
4.10.3外链接
【outer join】
示例(1):
【sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from student left outer join score on score.stuid=student.id;】示例(2):
【sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from student left outer join score on score.stuid=student.id
...> where name="张三"
...> order by 成绩 desc;】
源码示例(1):
/*练习:数据库完成对订单的管理
1.创建一张订单表,由 ID, 订单号, 货物信息, 生产厂商, 联系人, 联系电话, 订单时间:1 D202403120001
2.在表中插入随机给定的10条数据
3.查找订单信息
(1)查找 联系人为 "张三" 的所有订单号
【select ordername from order_manager where contactperson="张三";】
(2)查找订单号为 "D202403120001" 的所有订单信息
【select * from order_manager where ordername="D202403120001";】
(3)查找 订单时间截止到当天的所有订单号及联系人、联系电话
【select ordername,contactperson,contactphone from order_manager where ordertime < "20240310 24:00:00";】
(4)查找 货物信息包含 "手机" 内容的所有订单信息及货物信息
【select ordername,orderinfo from order_manager where orderinfo like "%手机%";】
(5)查找 生产厂商是"华为" 的所有货物信息包含 "平板" 的订单信息
【select * from order_manager where factoryname="华为" and orderinfo like "%平板%";】
*/