1.在Ubuntu下安装sqlite3软件
输入sqlite3启动,输入.quit退去
2.SQL语言与命令:
sqlite3+文件名----寻找文件地址
.header on/off 打开/关闭 数据库中列的名称
.mode csv/column/html/insert/line/list/tabs/tcl
数据库程序:名字.sql
.schema 表名称 查看表名称对应的表的格式(有那几列?每列类型)
.width 宽度 设置显示时的数据宽度
创造数据:
create table 表名称(数据名称:数据类型(字符大小),数据名称:数据类型(字符大小),数据名称:数据类型(字符大小)......)
整数类型:integer
字符类型:varchar
插入数据:
insert into 表名称(列1值,列2值......)
例如:insert into stduent values(10001,"张三","男",18,90);
查看语句:
select *from 表名称
仔细搜寻:select 列名称 from 表名称 where 列名称 >=<(判断条件)值
select 列名称 from 表名称 where 列名称 =“%字%”(寻找含什么字符的数据)
删除语句:
delete from 表名称 where 列名称 判断 条件;
更新语句:
update 表名称 set 列名称=新值 where 列名称=依据值;
排序:
order by
select * from 列名称 order by 排序依据 desc;
主键:
key:键值
内键:在表中唯一标识一条数据称为内键
外键:与外部表进行标识的数据称为外键
多表联合查询:
1.交叉连接
cross join
示例:
sqlite> select student.name as 学生姓名, lesson.name as 课程名
...> from student cross join lesson;
2.内连接
inner join
示例:
sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from score inner join student on score.stuid=student.id;
3.外连接
outer join
示例:
sqlite> select score.id as 成绩编号, student.name as 学生姓名, score.score as 成绩
...> from student left outer join score on score.stuid=student.id;
示例:
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;