Oracle 怎么将一个字符串写入到一个CLOB 变量

2024-11-22 11:29:47
推荐回答(2个)
回答1:

如果要用 DBMS_LOB.WRITE,则必须要有LOB定位器(LOB locator)。你这里报错就是因为 V_TEMP这个LOB没有LOB定位器。 只有存储在数据库表中的LOB才有定位器,如果你要用DBMS_LOB.WRITE这个过程,里面的LOB必须得是从表中取出来的。 如果你想修改数据库表中的LOB列,可以这样:select clob_col into V_TEMP from clob_table for update然后直接用DBMS_LOB.WRITE过程,而不需要DBMS_LOB.OPEN和CLOSE这两个过程。 如果你只是想给一个PL/SQL中的clob变量赋值的话,直接V_TEMP = to_clob('ABC');就可以了。

回答2:

在存储过程中直接赋值就好了。
declare
a clob
begin
a:='baddsdfds';
end;