sql >> Databáze >  >> RDS >> Oracle

Načítání obrazových dat do sloupců BLOB v Oracle

Máte různé obrázkové soubory JPG, PNG, GIF a BMP, které je třeba spravovat a zálohovat v
databázi a potřebujete způsob, jak provést počáteční načtení databáze.

Načítání binárních objektů LOB je o něco jednodušší než načítání textových objektů LOB.

Vytvořte sekvenci pro jedinečný identifikátor tabulky obrázků a tabulku samotnou:

vytvořit sekvenci img_seq;

vytvořit obrázek tabulky
(
img_num number,
img_nm varchar2(100),
img_blb blob,
ins_ts timestamp
);

Dále spusťte anonymní blok k načtení obrázku SCREEN CAPTURE.BMP do tabulky databáze:

deklarovat
src_blb bfile; /* ukaž na zdrojový BLOB v systému souborů */
dst_blb blob; /* cílový BLOB v tabulce */
src_img_nm varchar2(100) :='Screen Capture.bmp';
src_offset integer :=1; /* kde začít ve zdrojovém BLOB */
dst_offset integer :=1; /* kde začít v cílovém BLOB */
začátek
src_blb :=bfilename('LOB_SRC',src_img_nm);
vložit do obrázku (img_num, img_nm, img_blb, ins_ts)
values(img_seq.nextval, src_img_nm, empty_blob(), systimestamp)
vrácení img_blb do dst_blb;
dbms_lob.open(src_blb, dbms_lob.lob_readonly); /
>(
dest_lob => dst_blb,
src_bfile => src_blb,
množství => dbms_lob.lobmaxsize,
dest_offset => dst_offset,
src_offset => src_offset
);
dbms_lob.close(src_blb);
commit;
dbms_output.put_line('Zapsal BLOB do tabulky:' || src_img_nm);
end;

Po spuštění tohoto bloku se obrázek načte do blobu a záznam můžete zkontrolovat pomocí následujícího příkazu:

vyberte img_num, img_nm, ins_ts, length(img_blb) z obrázku;

  1. Vložte aktualizaci uloženou proc na SQL Server

  2. Algoritmus řazení SQL Server GUID. Proč?

  3. Jak funguje FORMAT() v MariaDB

  4. Použití jako v MySQL pro vyhledávací operace pomocí vzoru