Sql 为什么此事务计划不可序列化?

Sql 为什么此事务计划不可序列化?,sql,database,serialization,transactions,Sql,Database,Serialization,Transactions,我正在复习数据库课程的练习题 我们收到了一份交易时间表: T1 T2 Read(A) Write(B) Commit Read(B) Write(B) Commit(B) 这本书说上面的内容不是系列的,但是为什么呢 在我看来,您可以运行T2,然后运行T1,并得到相同的结果。这只是定义问题——您的示例是可序列化的,但不是串行的 串行计划是一种每次处理一个事务的计划 可序列化计划是一种可以在保留结果的同时转

我正在复习数据库课程的练习题

我们收到了一份交易时间表:

 T1            T2
 Read(A)
               Write(B)
               Commit
 Read(B)
 Write(B)
 Commit(B)
这本书说上面的内容不是系列的,但是为什么呢
在我看来,您可以运行T2,然后运行T1,并得到相同的结果。

这只是定义问题——您的示例是可序列化的,但不是串行的

串行计划是一种每次处理一个事务的计划


可序列化计划是一种可以在保留结果的同时转换为串行计划的计划。

您是在谈论SQL Server吗?此示例是串行的,结果等于您连续运行两个事务的结果可能是练习问题/答案中的错误:-|?我一年前就完成了与此问题相关的课程,但知道有人回答了我的问题,这让我内心感到温暖和模糊。嗨,乔纳,您如何确定这样的内容是否可序列化?示例:附表1:T2:R(B),T2:W(B),T1:W(A),T1:R(B),T3:R(A),T1:W(B),T2:W(A)附表2:T1:R(B),T3:R(A),T3:R(B),T2:W(A),T3:W(C),T1:R(A),T2:R(C)您是否通常只需手动查看它,并在TXN周围交换,直到您满意结果与序列相同(如果不可能,则无法序列化)-我这里不是说“冲突可序列化”,因为我可以管理它。非常感谢您提供的任何帮助(我正在参加大学考试)。干杯