Připadá mi to jako nedostatek privilegií. Často PUBLIC
uživatel má EXECUTE
oprávnění udělené tomuto balíčku, ale toto oprávnění může být zrušeno.
Můžete zkontrolovat, zda PUBLIC
má toto oprávnění zadáním následujícího dotazu:
SELECT * FROM all_tab_privs WHERE grantee = 'PUBLIC' AND table_name = 'UTL_FILE';
Pokud nejsou vráceny žádné řádky, zkuste udělit oprávnění ke spuštění buď uživateli, pod kterým jste přihlášeni, nebo PUBLIC
, jako nějaký privilegovaný uživatel, například SYS
:
GRANT EXECUTE ON SYS.utl_file TO user_name;
Upravit
Toto oprávnění musíte udělit, když jste přihlášeni například jako SYS
uživatel.