Hvordan lagre en PDF-fil i en Oracle tabell

Hvordan lagre en PDF-fil i en Oracle tabell


Det finnes flere metoder innebygd i Oracle som støtter PDF lagring. De kan lagres via APEX eller BFILE. De kan også lagres direkte i en tabell. For å lagre en PDF-fil i en Oracle tabellen, skrive en SQL-fil som plasserer filen i BLOB kolonne. Deretter kjører SQL-filen gjennom Oracle ledeteksten. Filen vil bli skrevet direkte inn i databasen uten noen eksterne verktøy.

Bruksanvisning

1 Start tekstredigeringsprogram eller kode editor av ditt valg.

2 Kopier og lim inn følgende kode til et tomt dokument:

CREATE OR REPLACE PROSEDYRE load_lob AS

ID-nummer;

image1 BLOB;

locator BFILE;

bfile_len nummer,

bf_desc VARCHAR2 (30);

bf_name VARCHAR2 (30);

bf_dir VARCHAR2 (30);

bf_typ VARCHAR2 (4);

ctr heltall;

CURSOR get_id IS

SELECT bfile_id,bfile_desc,bfile_type FROM graphics_table;

BEGYNNE

OPEN get_id;

LOOP

FETCH get_id INTO id, bf_desc, bf_typ;

EXIT NÅR get_id% notfound;

dbms_output.put_line ( 'ID:' || to_char (id));

VELG bfile_loc INTO locator Fra graphics_table WHERE bfile_id = id;

dbms_lob.filegetname (

locator, bf_dir, bf_name);

dbms_output.put_line ( 'Dir:' || bf_dir);

dbms_lob.fileopen (locator, dbms_lob.file_readonly);

bfile_len: = dbms_lob.getlength (locator);

dbms_output.put_line ( 'ID:' || to_char (id) || 'lengde:' || to_char (bfile_len));

VELG temp_blob INTO image1 Fra temp_blob;

bfile_len: = dbms_lob.getlength (locator);

dbms_lob.loadfromfile (image1, locator, bfile_len, 1,1);

INSERT INTO internal_graphics VALUES (id, bf_desc, image1, bf_typ);

dbms_output.put_line (bf_desc || 'Lengde:' || TO_CHAR (bfile_len) ||

'Navn:' || bf_name || ' Dir: '|| bf_dir ||' '|| Bf_typ);

dbms_lob.fileclose (locator);

END LOOP;

SLUTT;

/

3 Lagre filen med "sql" forlengelse. Klikk på "File", "Lagre som". Plasser den i en katalog. Gi den et navn og utvidelsen "sql" klikk "Lagre".

4 Kjør skriptet. Start Oracle ledetekst og skriv "SQL> @" og deretter katalogen og filnavnet til skriptet. Følg instruksjonene på skjermen for å laste PDF-filer til Oracle tabellen.