Di Oracle PL/SQL, untuk memeriksa apakah BLOB atau CLOB kosong atau tidak, gunakan dbms_lob.getlength() fungsi atau dbms_lob.compare() fungsi. Berikut ini contohnya:
1. Menggunakan Fungsi dbms_lob.getlength()
declare
vblob blob;
Cursor c_blob
is
select content into vblob
from employee_docs
where employee_id = 101;
begin
open c_blob;
fetch c_blob into vblob;
close c_blob;
/* if the vblob is empty then the length would be 0 */
if dbms_lob.getlength(vblob) = 0 then
raise_application_error(-20001, 'Blob is empty.');
end if;
-- do anything with vblob
end; 2. Menggunakan Fungsi dbms_lob.compare()
declare
vblob blob;
Cursor c_blob
is
select content into vblob
from employee_docs
where employee_id = 101;
begin
open c_blob;
fetch c_blob into vblob;
close c_blob;
/* if vblob is equal to an empty_blob, means it is empty */
if dbms_lob.compare(vblob, empty_blob()) = 0 then
raise_application_error(-20001, 'Blob is empty.');
end if;
-- do anything with vblob
end;
Demikian pula, untuk memeriksa CLOB yang kosong , ubah tipe variabel menjadi clob dan ganti empty_blob() fungsi dengan empty_clob() fungsi dalam kode PL/SQL di atas.
Tutorial Terkait:
- Bagaimana Cara Menyimpan BLOB sebagai File di PL/SQL?
- Bagaimana Cara Mendapatkan BLOB dari File di PL/SQL?
- Bagaimana Cara Mendapatkan File Dari BLOB di Oracle?
- Bagaimana Cara Mengekstrak Data BLOB Dari Oracle Menggunakan Toad?
- Menampilkan BLOB Contents (PDF, Gambar) ke dalam Region di Oracle Apex Page
- Menampilkan Konten CLOB di Oracle Apex