Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como verificar se o arquivo existe em PL/SQL?


A seguir está um exemplo de função armazenada para verificar se existe um arquivo em PL/SQL.

Exemplo de função PL/SQL para verificar se existe um arquivo


A função abaixo recebe dois parâmetros, um é para o nome do objeto do diretório Oracle e o segundo é o nome do arquivo e retorna o tipo booleano. Ele retornará true se existir um arquivo, caso contrário retornará false.
CREATE OR REPLACE FUNCTION is_file_exist (p_directory IN VARCHAR2,p_filename IN VARCHAR2)RETURN BOLEANASn_length NUMBER;n_block_size NUMBER;b_exist BOOLEAN :=FALSE;BEGINUTL_FILE.fgetattr (p_directory,p_filename,b_exist,n_length,n_block_size);RETURN b_exist;END is_file_exist;

Teste

SET SERVEROUTPUT ON;BEGINIF is_file_exist ('CSV_DIR', 'emp.dat')THENDBMS_OUTPUT.put_line('Arquivo existe.');ELSEDBMS_OUTPUT.put_line('Arquivo não existe.');END IF;END;/ 

Saída

Arquivo existe.Procedimento PL/SQL concluído com sucesso.

Veja também:

  • Exemplo de UTL_FILE.FCOPY
  • Exemplo de UTL_FILE.FREMOVE