什么叫做数据库管理系统?
mysql、SQLs、sqlite.....达梦数据库
例如:
食堂管理系统:
学生老师、食堂阿姨管理员用户
长江大学食堂管理系统(应用)应用系统层
mysql管理系统层
windows操作系统
数据库文件文件
一、sqlite3特殊指令
1.如何使用sqlite3数据库打开数据库文件
sqlite3 xxx.db
使用sqlite3数据库管理系统打开xxx.db文件 .db 就是数据库文件后缀
注意:如果当前的数据库文件不存在,就会先新建后打开
2.退出数据库管理系统
.quit 或者 .exit
3.查看当前数据库文件中的数据表名称
.table 或者 .tables
因为当前没有创建表,因此查询不到
注意:如果你输入了指令或者sql语句,结果发现它没有变化,证明没问题,如果出现报错才是出问题了
4.查询当前数据库文件中的数据表的结构
.schema
新建一个表名称为haha的表
其中列名称分别为name、id
数据类型分别为text、int
sql语句:
create table haha (name text,id int);
以上的sql语句其实就是当前表的结构(表名称、列名称、列数据类型)
5.我们可以使用.help去看更多的操作指令
二、sql语句(以;结束)
数据库的操作总结为:
增删改查
总结为三句话:
新建修改删除表
增加修改删除行
查询
1.新建一个数据库表
语法:create table 表名 (列名称 数据类型, 列名称 数据类型,.......);
例如:创建一个haha表 列分别为id int name text
2.修改表
语法:alter table 表名 rename to 新表名;(修改表名称)
语法:alter table 表名 add 列名称 数据类型;(修改表的结构)
有些小伙伴会问,我们当前的表可以删除列吗?
sqlite3无法直接删除列,创建一个新的表(结构就是比原表少你想删除的那一类,你只需要复制原本的表中除了你要删除的那一列以外的所有数据到新表中,删除原表,将新表名称改为老表名称)
3.删除表
语法:drop table xxx;
4.插入一行新的数据
语法:insert into 表名称 values (你要插入的一整行数据,而且需要对应);
语法:insert into 表名称 (你要插入的列名称)values (对应的列值);
5.修改表中的数据(改行中的信息)
语法:update 表名称 set 列名称 = 列值 where 匹配的条件;
例如:我们修改haha表中name为方俊的id为100
修改匹配到的所有行
6.删除一行或者多行
语法:delete from 表名 where 匹配条件
7.查询
语法:select 列名称 from 表名 where 匹配条件;
列名称表示你查询到的结果集由哪些列组成
* 所有 通配
查询的条件还可以使用很多高级使用方法:
and\or\between and \not\like
我们在登录的时候有id、passwd
select *from haha where id = "123" and passwd = "hahaha";
like:模糊查找
select *from haha where name like "%方俊%";
查询你的名字中带有z的
%z%: zx、xz、z、xzx
%z: z、xz(以z结尾)
z%:z、zx(以z开头)