För att uppdatera en BLOB
längre än 16383 byte kan något liknande detta användas (varje rad har ett jämnt antal hexadecimala siffror upp till 32766):
DECLARE
buf BLOB;
BEGIN
dbms_lob.createtemporary(buf, FALSE);
dbms_lob.append(buf, HEXTORAW('0EC1D7FA6B411DA58149'));
--...lots of hex data...
dbms_lob.append(buf, HEXTORAW('0EC1D7FA6B411DA58149'));
UPDATE MyTable
SET blobData = buf
WHERE ID = 123;
END;
nu är gränsen bara storleken på satsen, som kan komma att införas av operativsystemet (t.ex. SQLPlus, Pro*C, VB, JDBC...). För mycket stora påståenden kan PL/SQL också misslyckas med felet "out of Diana nodes".