Perlu diingat bahwa string SQL tidak boleh lebih besar dari 4000 byte, sedangkan Pl/SQL dapat memiliki string sebesar 32767 byte. lihat di bawah untuk contoh menyisipkan string besar melalui blok anonim yang saya yakini akan melakukan semua yang Anda perlukan.
catatan saya mengubah varchar2(32000) menjadi CLOB
set serveroutput ON
CREATE TABLE testclob
(
id NUMBER,
c CLOB,
d VARCHAR2(4000)
);
DECLARE
reallybigtextstring CLOB := '123';
i INT;
BEGIN
WHILE Length(reallybigtextstring) <= 60000 LOOP
reallybigtextstring := reallybigtextstring
|| '000000000000000000000000000000000';
END LOOP;
INSERT INTO testclob
(id,
c,
d)
VALUES (0,
reallybigtextstring,
'done');
dbms_output.Put_line('I have finished inputting your clob: '
|| Length(reallybigtextstring));
END;
/
SELECT *
FROM testclob;
"I have finished inputting your clob: 60030"