oracle 拼接clob,把string拼接成clob类型

不足之处大家多补充[@more@]

create or replace procedure p_public_clob(table_name varchar2,

pk number,

CONTENT_1 varchar2,

CONTENT_2 varchar2,

CONTENT_3 varchar2,

CONTENT_4 varchar2,

CONTENT_5 varchar2,

CONTENT_6 varchar2) as

ls_sql varchar2(4000);

lc_clob clob; --使用clob链接字符串参数

/*-------------------------/

/ 把string拼接成clob类型 /

/ author:yaoronghui

/ date: 2009-11-16--17 /

modify :

/ 功能描述: /

/ 参数:对动态表按照主键进行dml处理/

/问题:varchar2无法存放4000字符/

/-------------------------*/

begin

--根据传递的主键 pk修改参数表table_name中CONTENT=CONTENT_1||CONTENT_2...

ls_sql := 'update ' || table_name ||

' set content = empty_clob() where UPLOADID = :1 returning content into :lc_clob';

execute immediate ls_sql

using in pk, out lc_clob;

--change access

if sqlcode = 0 then

--append the lc_clob

dbms_lob.append(lc_clob, to_clob(CONTENT_1));

dbms_lob.append(lc_clob, to_clob(CONTENT_2));

dbms_lob.append(lc_clob, to_clob(CONTENT_3));

dbms_lob.append(lc_clob, to_clob(CONTENT_4));

dbms_lob.append(lc_clob, to_clob(CONTENT_5));

dbms_lob.append(lc_clob, to_clob(CONTENT_6));

commit;

else

rollback;

end if;

end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值