Cela ressemble à un manque de privilèges pour moi. Souvent PUBLIC
l'utilisateur a EXECUTE
privilège accordé sur ce paquet, mais le privilège peut être révoqué.
Vous pouvez vérifier si PUBLIC
a ce privilège en lançant la requête suivante :
SELECT * FROM all_tab_privs WHERE grantee = 'PUBLIC' AND table_name = 'UTL_FILE';
Si aucune ligne n'est renvoyée, essayez d'accorder le privilège d'exécution soit à l'utilisateur sous lequel vous êtes connecté, soit à PUBLIC
, en tant qu'utilisateur privilégié, par exemple SYS
:
GRANT EXECUTE ON SYS.utl_file TO user_name;
Modifier
Vous devez accorder le privilège tout en étant connecté en tant que, par exemple, SYS
utilisateur.