数据库:存储数据的仓库,持久化存储!本质上就是一个文件系统,而且存储数据可以实现持久化存储!
1.DDL(data definition language)数据定义语言
针对数据库或者表结构的创建、删除、修改,通俗来说就是定义数据存储结构的sql语句!create、drop、show、alter是其关键字!
创建数据库:create database 数据库名
删除数据库:drop database 数据库名
切换数据库:use 数据库名
展示所有数据库:show databases
修改数据库编码格式:alter database 数据库名 character set “utf-8”
查看常见的数据库语句:show create database 数据库名
创建表:create table if not exists 表名(字段名 数据类型 约束。。。);
查看创建表:show create table 表名;
修改表的名称:alter able 旧表名 rename 新表名
往表中最后添加字段 :alter table 表名 add 字段名 数据类型 约束
往表中最前面添加一个字段:alter table 表名 add 字段名 数据类型 约束 first
往表中任意位置添字段:alter table 表名 add 字段名 数据类型 约束 after 已存在字段
删除表中的字段:alter table 表名 drop 字段名称
改变表中的现有字段:alter table 表名 change 旧字段 新字段名 类型 约束
删除表:drop table 表名
2.DML(data manipulation language)数据操作语言
主要针对表中的数据进行更新,更新包含了添加、修改、删除!insert、update、delete是其关键字!
添加:insert into 表名 (字段1,字段2、、)values/value(值1,值2、、)
修改:update 表名 set 字段名 =值,字段名 = 值、、、 [where条件]
删除:delete from 表名 [ where 条件]
1、delete from 表名;
属于dml操作,只是将表中的数据删除,对表没有操作
2、truncate table 表名;
属于ddl,将表删除,再创建一张新表出来
3.DQL(data query language)数据查询语言
主要针对表中数据的查询操作!select是其关键字!
查询:select 字段1,字段2,、、、from 表名 [where 条件]
select 查询的结果(字段名、聚合函数、单行函数、常量值)
from 表名
where 分组之前可以用的条件,只能用字段作为条件
group by 字段名,进行分组
having 分组之后可以用的条件,只能用聚合函数作为条件
order by 字段 进行排序
limit 分页
内连接:
隐式:select 字段1, 字段2, ... from 表1, 表2 where 连接条件 [and 筛选条件]
显示:select 字段1, 字段2, ... from 表1 inner join表2 on 连接条件[where 筛选条件]
外连接:
左:select 字段1, 字段2, ... from 左表 left join 右表 on 连接条件 [where 筛选条件]
右:select 字段1, 字段2, ... from 左表 right join 右表 on 连接条件 [where 筛选条件]
多行多列:select * from teacher;
单行单列:select count(*) from teacher;
单行多列:select * from teacher where tid = ?;
单列多行:select tname from teacher;
4.DCL(data control language)数据控制语言
针对数据库访问时用户及权限的设置!分配操作数据库的用户!为创建的用户分配操作权限!
查看当前所有的用户:select * from mysql . `user`
创建用户:create user 用户名@xxx identified by 密码
给用户授权:grant 权限1、、、 on数据库名 . * to 用户名@IP
撤销授权: revoke 权限1、、 on 数据库名 . *from 用户名@IP
查看用户的权限:show grants for 用户名@IP
删除用户的权限:drop user 用户名@IP
5.TCL(transaction control language)事务控制语言
事务在数据库操作中,尤其是代码层面是一个很重要的机制!TCL主要是事务操作的语句!
事务是指单个逻辑单元内的所有操作、要么全部成功、要么全部失败!!!事务是保证数据准确性、一致性、完整性的一种机制!
事务的四大特性:
原子性 一致性 隔离性 持久性
事务的隔离级别:
6.CCL(cursor control language)指针控制语言
视图:视图是简化查询过程,提高数据库安全性的虚拟表。