sql >> Database teknologi >  >> RDS >> Oracle

Hvordan kontrollerer man, om filen findes i PL/SQL?

Det følgende er et eksempel på en lagret funktion for at kontrollere, om en fil findes i PL/SQL.

PL/SQL-funktionseksempel for at kontrollere, om der findes en fil

Nedenstående funktion tager to parametre, den ene er for Oracle biblioteksobjektnavn og den anden er filnavnet og returnerer den boolske type. Det vil returnere sandt, hvis der findes en fil ellers returnerer falsk.

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;
/

Output

File exists.
PL/SQL procedure successfully completed.

Se også:

  • UTL_FILE.FCOPY Eksempel
  • UTL_FILE.FREMOVE Eksempel
  1. Hvordan får jeg det aktuelle tidszonenavn i Postgres 9.3?

  2. execSQL:er bindargs bedre?

  3. Hvordan hjælper databasedesign med at organisere lærere, lektioner og elever?

  4. Aflæs meget store databaser