5、TCL语言
5、TCL语言
Transaction Control Language 事务控制语言
5.1事务
定义:一组SQL语句组成的单元,这个单元要么全部执行,要么全都不执行
特点:ACID
A原子性:一个事务不可再分割
C一致性:一个事务执行会从一个一致状态切换到另一个一致状态
I 隔离性:一个事务的执行不受其他事务的干扰
D持久性:一个事务一旦提交,会永久改变数据库数据
5.2事务的创建
隐式事务:事务没有明显的开启和结束的标记
显示事务:事务有明显的开启和结束的标记,前提是必须设置自动提交功能set autcommit=0;
set autcommit=0; #开启事务 start transaction; sql 语句; commit; #提交事务 rollback; #回滚事务
5.3事务的隔离级别
脏读 不可重复读 幻读
read uncommitted 会出现 会出现 会出现
read committed 不会出现 会出现 会出现
repeatable read 不会出现 不会出现 会出现
seializable 不会出现 不会出现 不会出现
查看隔离级别:
select @@tx_isolation;
设置隔离级别:
set session|global transaction isolation level 隔离级别;
5.4savepoint 保存点的演示(一般与rollback使用)
例:
set autcommit=0; start transaction; delete from account where id=25; #删除一组数据 savepoint a; #设置保存点 delete from account where id=28; #删除一组数据 rollback to a; #回滚到保存点a
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南