如何使用substr for blob更新表?

时间:2012-07-27 11:38:22

标签: sql database oracle blob substr

我试过更新查询:

 Update table_name
   set data='.....' || Dbms_lob.substr(data,1,20)
   where key  ='...'

可以更新,但第20位之后的所有数据也被清除。

如何修改sql?

2 个答案:

答案 0 :(得分:2)

检查dbms_lob.substr上的语法。它与标准substr相反,所以如果你想要数据的前20个字符,它将是dbms_lob.substr(data,20,1)。或者,更好,

dbms_lob.substr(lob_loc=>data,amount=>20,offset=>1);

请注意,它返回一个varchar2,因此金额<= 32767.

答案 1 :(得分:0)

update [tableName] set field = dbms_lob.substr(field,3,1)+'abc'where field = value

它无法工作......