UTL_FILE, UTL_FILE_DIR und VERZEICHNIS, wie beeinflussen Sie die UTL_FILE.FREMOVE?
FREMOVE scheitert mit einer Fehlermeldung "ORA-29280: Ungültiger Verzeichnispfad"
Funktioniert es einwandfrei, wenn ich den Pfad zu den UTL_FILE_DIR und die Datenbank neu starten.
Dies ist unabhängig davon, dass das Verzeichnis als Oracle-Verzeichnis mit LESE-und SCHREIBZUGRIFF gewährt.
InformationsquelleAutor Cade Roux | 2011-06-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn mit UTL_FILE Sie eine von zwei Optionen:
Option 1: UTL_FILE_DIR muss das Verzeichnis, das Sie verwenden möchten, in die parameter. Wenn es nicht da ist wird es nicht funktionieren. Der Nachteil ist, dass Sie jederzeit, wenn Sie diesen parameter geändert oder Hinzugefügt, müssen Sie die bounce-Datenbank. Durch diese Methode wird der erste parameter der UTL_FILE.FREMOVE übergeben wird die aktuelle OS-Verzeichnis.
Option 2: alternativ verwenden Sie ein oracle-Directory-Objekt. Verwenden Sie die directory-Objekt-Namen (nicht die aktuelle OS-Verzeichnis) im ersten parameter von UTL_FILE.FREMOVE
Referenzen:
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/u_file.htm
http://www.sc.ehu.es/siwebso/KZCC/Oracle_10g_Documentacion/server.101/b10755/initparams223.htm
So fremove entweder eine logische directory-name ODER ein physisches Verzeichnis-Namen als ersten parameter?
Höhle, gibt es natürlich ein Sicherheitsrisiko, dass jeder oracle-Benutzer haben Zugriff auf diese Verzeichnisse. Das war nicht das, was der OP gefragt, jedoch, und in den Geist der vollständigen Offenlegung ist es gute Praxis zu präsentieren, jede verfügbare option. Ich habe gesehen, dass mehr als eine Handvoll Datenbanken, in denen UTL_FILE_DIR wird auf ' * ' gesetzt!!! :-O .
Roux, Wenn Sie ein oracle-directory-Objekt, übergeben Sie das Verzeichnis-Objekt-Namen. Wenn Sie UTL_FILE_DIR, übergeben Sie, was Verzeichnis, das Sie verwenden möchten, können gefunden werden in den parameter UTL_FILE_DIR.
Ich weiß nicht bestreiten, dass es sinnvoll ist, jeden verfügbaren option. Ich Tue nicht einverstanden, dass es ist ein Sicherheits-Vorteil mit UTL_FILE_DIR. UTL_FILE_DIR schafft Sicherheit Probleme (großen wenn die Leute es eingestellt werden, um *), ist es nicht Sie zu lösen.
InformationsquelleAutor Joel Slowik
Was ist die syntax, die Sie verwenden für FREMOVE-parameter-Position? Für ein Verzeichnis, übergeben Sie den Namen des Oracle-Directory-Objekt, falls erhebliche.
InformationsquelleAutor DCookie