Oracle DB, Oracle APEX, Linux etc.

понедельник, 29 ноября 2010 г.

Oracle: Consistency и разминка для ума

Допустим, что в одной сессии выполнится следующее:

drop table t7;
create table t7 as select 1 id, 0 val from dual;
insert into t7 values(2, 0);
update t7 set val = 1;

Затем во второй выполнилось вот это:

update t7 x set val = (select t.val + 1 from t7 t where t.id = x.id);
commit;
select * from t7;

Что выведется во второй сессии на экран?

Теперь повторим в первой сессии тот же блок, что и вначале, а во второй выполним:

update t7 x set val = (select x.val + 1 from t7 t where t.id = x.id);
commit;
select * from t7;

Каким будет результат?

PS: Ответы и информацию для размышления опубликую через пару дней.

Комментариев нет:

Отправить комментарий