在Oracle中的会话之间共享事务

时间:2015-01-12 06:37:27

标签: oracle

这种情况是否可能:

我们是否可以拥有一组在没有提交交易的情况下共享交易的会话?

假设我们有一名员工:

   EMPLOYEE

 ID      NAME

 1      Arnab

我们有一个会话session1,它将行更新为NAME'Har'(未提交)

update Employee set Name = 'Harry' where ID=1;

此时,从任何其他会话session2,session3,session4,如果我们查询此表,我们仍然会将NAME视为“Arnab”,因为此事务尚未提交。

但是,在oracle中是否可以进行某种“Grouped”会话,这样我们就可以拥有一组会话session1,session2,session3,session4,它们共享相同的事务级别,因此,在上面的场景中session2,session3,session4会将名称视为'Harry',即使它没有被提交?

但是,从不在此组中的其他会话中,说session99对Employee表的查询仍然将名称命名为'Arnab'

我知道这可能违反了关系数据库的ACID属性,听起来是一个非常糟糕的命题,但是现在我被困在一个数据库中,不允许任何类型的代码修改,这种属性似乎成为唯一的情况

0 个答案:

没有答案