Problème PL/SQL utilisation de RAISE_APPLICATION_ERROR
Bonjour,
Pouvez-vous m'aider s'il vous plaît ?
Je viens d'écrire ce trigger dont le corps correspond à cela :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
Begin
if (ora_login_user <> 'SYS' and ora_login_user <> 'SYSTEM' and ora_login_user <> 'DBSNMP' and ora_login_user <> 'SYSMAN' ) then
if (ora_dict_obj_type <> 'VIEW' or ora_sysevent <> 'CREATE') then
RAISE_APPLICATION_ERROR(-20998, 'Opération interdite',false);
end if;
end if;
End; |
Il me semble que c'est un trigger très simple. Pourtant j'ai ce retour :
Code:
1 2 3 4 5 6 7
|
Error: ORA-00604: error occurred at recursive SQL level 1
ORA-20998: Opération interdite.
ORA-06512: at line 6
SQLState: 60000
ErrorCode: 604 |
Ce que je souhaite obtenir c'est juste l'erreur 20998 et pas les deux autres. J'ai regardé de mon côté, on parle souvent de traitement de la pile d'erreur. Mais je n'ai pas encore trouvé de solution.
Merci pour votre aide.
Floxone.