Oracle rozlišuje velká a malá písmena. Ale všechna jména v SQL a PL/SQL jsou automaticky převedena na velká písmena, pokud nejsou uzavřena v uvozovkách.
Takže:
CREATE DIRECTORY test_dir AS 'c:\';
se ve skutečnosti provede jako:
CREATE DIRECTORY TEST_DIR AS 'c:\';
Proto se vámi definovaný adresář nazývá TEST_DIR
. Pokud na něj odkazujete v řetězci (na rozdíl od názvu symbolu v SQL nebo PL/SQL), musíte použít 'TEST_DIR'
. 'test_dir'
nebude fungovat.
Tak zkuste:
fileHandler := UTL_FILE.FOPEN('TEST_DIR', 'test_file.txt', 'W');