Estou tantando criar diretorios via PL/SQL mais estou com problemas de privilégios.
Executando o mesmo comando via SQL normal funciona. Mais teria que ser via PL/SQL.
Qual privilégio esta faltando, algum de vocêis sabem.
Eis o código que funciona:
DECLARE
ADirOracle VARCHAR2(100);
APath_Arquivo VARCHAR2(100) := 'c:\exemplo';
BEGIN
ADirOracle := 'DIR_' || to_char (systimestamp, 'JHHMMSSff' );
execute immediate 'CREATE OR REPLACE DIRECTORY '||ADirOracle||' as ''' || APath_Arquivo || '''' ;
END;
CREATE OR REPLACE PROCEDURE PR_TESTE AS
ADirOracle VARCHAR2(100);
APath_Arquivo VARCHAR2(100) := 'c:\exemplo';
BEGIN
ADirOracle := 'DIR_' || to_char (systimestamp, 'JHHMMSSff' );
execute immediate 'CREATE OR REPLACE DIRECTORY '||ADirOracle||' as ''' || APath_Arquivo || '''' ;
END;
BEGIN
PR_TESTE();
END;
PR_TESTE();
END;
ORA-01031: privilégios insuficientes
ORA-06512: em "SISTEMA.PR_TESTE", line 6
ORA-06512: em line 2
01031. 00000 - "insufficient privileges"