关于事务隔离级别

maskhywind 2011-05-28 03:32:13
现在有两个事务同时发生
T1:
select * from R;
delete R where A > 5;
select * from R;

T2:
update R set A>6 where A=7;
insert into R...
select * from S;

这两个事务应该如何设置界别 T1 应该是最高的序列化 因为有 幻读和不可重复读, T2 因该设成什么级别呢 是授权读取还是未授权读取呢? 大侠指点.
...全文
114 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
唐诗三百首 2011-05-28
  • 打赏
  • 举报
回复
1.请先确认SQL语法是否正确,"update R set A>6 where A=7;"?

2.SQL Server事务隔离级别中没有"授权读取"和"未授权读取",
应该是认可读取(read committed)和未认可读取(read uncommitted).

3.T2事务先更新R表,后插入R表,再读取S表.
S表在事务中只出现仅此一次,不存在是否可重复读的问题.
--小F-- 2011-05-28
  • 打赏
  • 举报
回复
事务的隔离级别中没有授权读取和未授权读取这两个

一般来说在默认的情况下 采取读已提交的隔离级别

22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧