Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Holen Sie sich BLOB aus der BFILE-Spalte in Oracle

In Oracle die BFILE Spalte ist ein Locator oder eine Referenz für die externe Datei. Es enthält die Verzeichnis- und Dateinameninformationen. Hier gebe ich ein Beispiel für PL/SQL-Code, um BLOB zu erhalten aus der BFILE Locator-Spalte in Oracle.

PL/SQL-Prozedurbeispiel – BLOB aus BFILE-Spalte abrufen

Declare
  l_bfile  BFILE;
  l_blob   BLOB;

  l_dest_offset INTEGER := 1;
  l_src_offset  INTEGER := 1;
BEGIN

  Select your_bfile_column into l_bfile from yourTable
    where yourCondition;
  DBMS_LOB.fileopen(l_bfile, DBMS_LOB.file_readonly);
  
  DBMS_LOB.loadblobfromfile (
    dest_lob    => l_blob,
    src_bfile   => l_bfile,
    amount      => DBMS_LOB.lobmaxsize,
    dest_offset => l_dest_offset,
    src_offset  => l_src_offset);
  DBMS_LOB.fileclose(l_bfile);

  COMMIT;

END;

Die Variable l_blob enthält das BLOB extrahiert aus der BFILE Spalte