ORACLE 11G UTL_FILE + UTL_FILE_DIR - Invalid Directory

Hallo, ich arbeite mit Oracle 11 und ich bin versucht, zu schreiben, um ein Verzeichnis auf der server-box mit UTL_FILE.FOPEN.

Um dies zu testen bin ich mit dem folgenden Skript (Ausgabe enthalten):

SQL> @D:\test.sql

declare

l_file_handle              UTL_FILE.FILE_TYPE;

begin
  l_file_handle := UTL_FILE.FOPEN('/appl/mydir',
                                  '/appl/mydir/filename',
                                  'W');

  UTL_FILE.FCLOSE(l_file_handle);

  DBMS_OUTPUT.PUT_LINE('FINISHED');

end;

ORA-29280: invalid directory path
ORA-06512: at "SYS.UTL_FILE", line 41
ORA-06512: at "SYS.UTL_FILE", line 478
ORA-06512: at line 7

SQL>

Habe ich die /appl/mydir Hinzugefügt, um die UTL_FILE parameter:

SELECT value
FROM V$PARAMETER
WHERE NAME = 'utl_file_dir';

/appl/mydir, /appl/mydir2, /appl/mydir3

Das UNIX-Verzeichnis, Schreibrechte alle auf UNIX:

$ ls -l /appl/mydir
total 0
drwxrwsrwx    2 user userc 363968 Nov 27 13:46 mydir

Oracle Directory-Objekt ist nicht eine option, und ich bin mir der Nachteile von der UTL_FILE_DIR Umsetzung.

Irgendwelche Ideen, warum das Skript fehlschlägt?

docs.oracle.com/cd/E11882_01/appdev.112/e10577/... was Sie oben scheint nicht zu passen die docs überhaupt.
in welcher Weise? Der obige code sollte gültig sein und das funktioniert auf einem anderen Oracle-9-Umgebung.
denken Sie daran, dass der oracle-Benutzer (dh der Benutzer, der die db läuft) muss Lesen/schreiben/ausführen für die Verzeichnisse, um dorthin zu kommen und schreiben Sie Ihre Datei. hat der oracle-Benutzer haben zumindest r+x auf /appl ?
auch die Dokumente für 9.2 Zustand, dass der erste Parameter muss in Großbuchstaben) ein directory-Objekt, und der zweite darf nicht enthalten einen Weg.
streng genommen nicht richtig. directory-Objekte sind der Weg zu gehen, sicher, aber die Pfade sind noch einmal unterstützt in 11gR2. die Pfade sollen nicht übergeben werden, der in parameter 2 aber Sie sind wieder toleriert (ignoriert).

InformationsquelleAutor Robert Gallow | 2012-11-28

Schreibe einen Kommentar