transaction control language
事务的ACID属性
- 原子性(Atomicity)
- 一致性(Consistency)
- 隔离性(Isolation)
- 持久性(Durability)
事务的创建
事务默认是开启的,如果需要,手动设置自动提交功能为关闭 ,如果有需要每次开机都需要重新设置
set autocommit = 0
显示事务开启
案例:commit 和 rollback
数据库的隔离级别
查看当前隔离级别
select @@tx_isolation
设置当前隔离级别
set [session | global] transaction isolation level read uncommitted | read committed | 或者其他隔离级别名称
savepoint使用---------回滚到保存点位置,保存点之后的经过回滚,返回到上一次结果状态,例:id=25的会被删除,id=28的依然存在
视图
一、创建视图
create view 视图名
as
查询语句
优点
- 重用sql语句
- 简化复杂的sql操作,不必知道查询细节
- 保护数据,提高安全性
视图的修改
方式一
create or replace view 视图名 #存在就修改,不存在就创建
as
查询语句
方式二
alter view 视图名
as
查询语句
删除视图
drop view 视图名1,视图名2,...
查看视图
desc 视图名 | show create view 视图名
视图的更新
以下特点视图不允许更新
对比视图和表
delete和truncate在事务中使用的区别
变量
系统变量
全局变量
会话变量
自定义变量
自定义变量-----用户变量
自定义变量-----局部变量
对比用户变量和局部变量