powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / отлов DDL триггером ORA-24344: success with compilation error
2 сообщений из 2, страница 1 из 1
отлов DDL триггером ORA-24344: success with compilation error
    #39920543
chidoriami
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, привет)

Oracle Database 12c Enterprise Edition Release 12.2.0.1.0

есть триггер на DDL (привожу укороченную версию)
сохраняем активность в интересующей схеме в табличку с историей изменений
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
CREATE OR REPLACE TRIGGER trg_PATCH_DDL_HISTORY
    after create or drop or alter or comment or grant or RENAME or REVOKE on schema
declare
    v_user              varchar2(128) := lower(sys_context('USERENV', 'OS_USER'));
    sql_text            ora_name_list_t;
    n                   number;
    v_stmt              clob;
begin 
    n := ora_sql_txt(sql_text);

    for i in 1..n loop
        v_stmt := v_stmt || sql_text(i);
    end loop;
    insert into PATCH_DDL_HISTORY (insert_dttm, user_name, operation_type,       object_type,       object_name, sql_script)
                           values (    sysdate,    v_user,   ora_sysevent, ora_dict_obj_type, ora_dict_obj_name,     v_stmt);
end;
/



все прекрасно, то,что нам надо, только хочется улучшить -
если при компиляции вьюхи или процедуры произошла
ORA-24344: success with compilation error
то не записывать такой скрипт.

вариант с "посмотреть в all_objects статус объекта - VALID или INVALID" не прокатил
- несмотря на кляузу "after create" статус объекта меняется после выполнения триггера =(

вариант IF is_servererror(24344) THEN
тоже не работает, ни с положительным, ни с отрицательным номером ошибки

есть еще идеи?
...
Рейтинг: 0 / 0
отлов DDL триггером ORA-24344: success with compilation error
    #39920559
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chidoriami
то не записывать такой скрипт.
Стыдиться ошибок, замечаемых компилятором, бессмысленно. Ведь еще остаются синтаксически правильные записи.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / отлов DDL триггером ORA-24344: success with compilation error
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]