Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle PL/SQL:Проверете дали BLOB или CLOB са празни

В Oracle PL/SQL, за да проверите дали BLOB или CLOB е празен или не, използвайте dbms_lob.getlength() функция или dbms_lob.compare() функция. Ето примерите:

1. Използване на функция 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. Използване на функция 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;

По същия начин, за да проверите за празен CLOB , променете типа на променливата на clob и заменете empty_blob() функция с empty_clob() функция в горния PL/SQL код.

Свързани уроци:

  • Как да запишете BLOB като файл в PL/SQL?
  • Как да получа BLOB от файл в PL/SQL?
  • Как да получа файл от BLOB в Oracle?
  • Как да извлечем BLOB данни от Oracle с помощта на Toad?
  • Показване на BLOB съдържание (PDF, изображения) в регион в страницата на Oracle Apex
  • Показване на съдържанието на CLOB в Oracle Apex
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL COALESCE и NULLIF функция

  2. Как мога да вмъкна няколко реда в oracle със стойност на последователност?

  3. Функция TRUNC(число) в Oracle

  4. Пример за групово събиране на Oracle с помощта на обект тип тип ред на курсора

  5. Конфигуриране на репликация на хетерогенна база данни – SQL Server към Oracle