В Oracle отложенные ограничения проверяются только в точке фиксации.column not null deferrable
В чем смысл предложения DEFERRABLE в случае ограничения NOT NULL? Например
create table test(a number not null deferrable, b number);
insert into test(a,b) values (222, 111);
commit;
После этих заявлений я думал, следующий код будет работать
update test set a = null where b = 111;
delete test where b = 111;
commit;
Но это не так.
В чем разница между двумя определениями?
create table test1(a number not null deferrable, b number);
create table test2(a number not null, b number);
Да, вы правы. С INITIALLY DEFERRED мой код работает. Благодарю. –