oracle事务中多条sql处理一条记录时。。。。

时间:2021-01-10 00:27:13
一个事务,包含两条sql,第一条更新,第二条删除,那么在执行删除的时候,此事务是没有提交的,删除是根据更新之前的表还是更新后的表呢?

2 个解决方案

#1


会由锁来控制的,看哪个操作先后了

#2


引用 楼主 u012760284 的回复:
一个事务,包含两条sql,第一条更新,第二条删除,那么在执行删除的时候,此事务是没有提交的,删除是根据更新之前的表还是更新后的表呢?

更新之后,因为他们在同一个session中,就好比你update过后不进行COMMIT,在同一个session再进行SELECT看到的值其实是你update过后的值了。commit后才会对所有session有效

#1


会由锁来控制的,看哪个操作先后了

#2


引用 楼主 u012760284 的回复:
一个事务,包含两条sql,第一条更新,第二条删除,那么在执行删除的时候,此事务是没有提交的,删除是根据更新之前的表还是更新后的表呢?

更新之后,因为他们在同一个session中,就好比你update过后不进行COMMIT,在同一个session再进行SELECT看到的值其实是你update过后的值了。commit后才会对所有session有效