Trong Oracle PL / SQL, để kiểm tra xem BLOB
hoặc CLOB
trống hoặc không, hãy sử dụng dbms_lob.getlength()
function hoặc dbms_lob.compare()
hàm số. Dưới đây là các ví dụ:
1. Sử dụng hàm 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. Sử dụng hàm 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;
Tương tự, để kiểm tra CLOB
trống , thay đổi loại biến thành clob
và thay thế empty_blob()
hàm với empty_clob()
trong mã PL / SQL ở trên.
Hướng dẫn liên quan:
- Cách lưu BLOB dưới dạng tệp trong PL / SQL?
- Cách tải BLOB từ tệp trong PL / SQL?
- Cách lấy tệp từ BLOB trong Oracle?
- Làm thế nào để trích xuất dữ liệu BLOB từ Oracle bằng Toad?
- Hiển thị Nội dung BLOB (PDF, Hình ảnh) thành một Vùng trong Trang Oracle Apex
- Hiển thị Nội dung CLOB trong Oracle Apex