Das Folgende ist ein gespeichertes Funktionsbeispiel, um zu prüfen, ob eine Datei in PL/SQL existiert.
PL/SQL-Funktionsbeispiel zum Prüfen, ob eine Datei existiert
Die folgende Funktion benötigt zwei Parameter, einer ist für den Namen des Oracle-Verzeichnisobjekts und der zweite ist der Dateiname und gibt den booleschen Typ zurück. Es wird wahr zurückgegeben, wenn eine Datei existiert, andernfalls wird falsch zurückgegeben.
CREATE OR REPLACE FUNCTION is_file_exist (p_directory IN VARCHAR2, p_filename IN VARCHAR2) RETURN BOOLEAN AS n_length NUMBER; n_block_size NUMBER; b_exist BOOLEAN := FALSE; BEGIN UTL_FILE.fgetattr (p_directory, p_filename, b_exist, n_length, n_block_size); RETURN b_exist; END is_file_exist;
Test
SET SERVEROUTPUT ON; BEGIN IF is_file_exist ('CSV_DIR', 'emp.dat') THEN DBMS_OUTPUT.put_line ('File exists.'); ELSE DBMS_OUTPUT.put_line ('File not exists.'); END IF; END; /
Ausgabe
File exists. PL/SQL procedure successfully completed.
Siehe auch:
- UTL_FILE.FCOPY-Beispiel
- UTL_FILE.FREMOVE-Beispiel