根据
documentation CLOB和NCLOB数据类型列,可以存储多达8 TB的字符数据.
UPDATE my_table SET clob_column = 'text,which contains 100 000 characters' WHERE id = 1
?
如果在文本中,字符数最多为32767,则可以使用PL / sql匿名块:
DECLARE myvar VARCHAR2(15000); BEGIN myvar := 'text,which contains 100 000 characters'; UPDATE my_table SET clob_column = myvar WHERE id = 1; .... END;
什么是解决方案,其中文本非常大并且包含例如100 000个字符?
更新
我正在尝试使用dbms_lob.append:
create table t1 (c clob); declare c1 clob; c2 clob; begin c1 := 'abc'; c2 := 'text,which contains 100 000 characters'; dbms_lob.append(c1,c2); insert into t1 values (c1); end;
我做错了什么?
您应该使用dbms_lob包,将一些字符串添加到clob的过程是dbms_lob.append.
declare c1 clob; c2 varchar2(32000); begin c1 := 'abc'; c2 := 'text,which contains 32 000 characters'; dbms_lob.append(c1,c2); c2 := 'some more text,c2); insert into t1 values (c1); end;