⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 事务1.sql

📁 本代码简单明了
💻 SQL
字号:
----脏读----
--事务1--(1)
use pubs
begin transaction
update jobs set job_desc = 'ACCP1' 
where job_id = 1

rollback transaction
commit transaction


----不可重复读----
--事务1(1,3)隐性事务
use pubs
set implicit_transactions on--(只执行1次)
select * from jobs where job_id = 1

rollback transaction
select @@trancount


----幻影读----
--事务1(1)
set implicit_transactions on--(只执行1次)
select * from jobs where job_desc = 'accp'
--(3)
select * from jobs where job_desc = 'accp'

rollback transaction
----以上为事务缺陷----



----事务的隔离级别----
--隔离级别3:Repeatable Read  可重复读
	  --可以防止脏读和不可重复读。
--事务1:
--设置为默认级别(任何事务类型都不能更新)

use pubs
set transaction isolation level Repeatable Read 
set implicit_transactions on--(只执行1次)
--(1)
select * from jobs where job_id = 1

--(2)
select * from jobs where job_id = 1

rollback transaction



--4、Serializable     可串行读(连续的)
--演示隔离级别3不能阻止添加数据
set transaction isolation level Repeatable Read 
set implicit_transactions on--(只执行1次)
--(1)
select * from jobs


--升高隔离级别4
set transaction isolation level Serializable 
set implicit_transactions on--(只执行1次)
--(1)
select * from jobs

commit
rollback

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -