Coloquei 2 mil já no varchar2 e nada kkkkk
Estranho ele dar esse erro, estou criando usuario rsrs, so se internamente ele da algum GRANT na hora de criar o usuario….
E outra coisa que estou tentando é fazer ele gravar na tabela LOG e também mostrar um RAISE:
create or replace trigger gr_trigger
after grant or revoke
on database
declare
priv dbms_standard.ora_name_list_t;
who dbms_standard.ora_name_list_t;
npriv pls_integer;
nwho pls_integer;
BEGIN
npriv := ora_privilege_list(priv);
nwho := ora_grantee(who);
if (ora_sysevent = ‘GRANT’) and user ‘SYS’ then
RAISE_APPLICATION_ERROR(-20001, ‘GRANTs são Proibidos!!!’);
end if;
for i in 1..npriv
loop
for j in 1..nwho
loop
insert into log values
(
systimestamp,
ora_sysevent,
priv(i),
ora_dict_obj_owner,
ora_dict_obj_name,
who(j),
ora_login_user,
(NVL(ora_client_ip_address, ‘N/A’))
);
end loop;
end loop;
END;
/
Infelizmente não está funcionando, ele da a mensagem de erro mas não grava na tabela LOG:
ORA-00604: ocorreu um erro no nφvel 1 SQL recursivo
ORA-20001: GRANTs sao Proibidos!!!
ORA-06512: em line 10