Какие DDL инструкции в Oracle не транзакционны ?

xz_post

Есть ли где полный список команд DDL в Oracle, которые не транзакционны ?

ava3443

Да вроде бы как все транзакционны. Только своеобразно - Oracle неявно добавляет commit непосредственно перед и сразу после каждого DDL:
begin
commit;
do the ddl;
commit;
exception
when others then rollback;
raise;
end;

xz_post

Смысл в том что делается модуль обновления БД для одной софтины. Каждая версия обновления - это sql скрипт, запускаемый в транзакции. Сам скрип содержит кучу create table... alter table... insert и т.д. Если будет сбой то нужно откатиться назад (на всякий случай есть бекап). В SQL Server нормально работает... Но грамотные люди сказали, что с ораклом могут быть проблемы (хотя мне вериться в это с трудом).
Да вроде бы как все транзакционны. Только своеобразно - Oracle неявно добавляет commit непосредственно перед и сразу после каждого DDL:
А если запустить несколько ddl во внешней транзакции ?
Оставить комментарий
Имя или ник:
Комментарий: