sql >> Databasteknik >  >> RDS >> Oracle

Hur kontrollerar jag om filen finns i PL/SQL?

Följande är ett exempel på en lagrad funktion för att kontrollera om en fil finns i PL/SQL.

PL/SQL-funktionsexempel för att kontrollera om en fil finns

Funktionen nedan tar två parametrar, en är för Oracle-katalogobjektets namn och den andra är filnamnet och returnerar den booleska typen. Den kommer att returnera true om en fil finns annars returnerar false.

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;

Testa

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

Utdata

File exists.
PL/SQL procedure successfully completed.

Se även:

  • UTL_FILE.FCOPY Exempel
  • UTL_FILE.FREMOVE Exempel
  1. INSERT IGNORE vs INSERT ... PÅ DUBLIKATNYCKELUPPDATERING

  2. 6 sätt att lägga till en månad till ett datum i MariaDB

  3. Kopiera en tabell (inklusive index) i postgres

  4. Uppgradering till den senaste Jira med den senaste versionen av MariaDB Server