【oracle】 blob&clob类型的字段插入字符串

 

复制代码
---------------------------------------------------------------------
-- 将字符串插入Blob字段
---------------------------------------------------------------------
DECLARE
    content BLOB; -- 或者使用下面这种写法:表名.字段名%TYPE
    -- content T_FIELDS.F_BLOB%TYPE; -- Blob类型
    buff VARCHAR2(4000);

BEGIN
      -- 初始化blob
    dbms_lob.createtemporary(content, true);
    
    buff :='harara';
    -- 向blob中追加内容,LENGTHB()取的是字节数,不是字符数,UTL_RAW.CAST_TO_RAW()将字符串转换为RAW
    dbms_lob.writeAppend(content, LENGTHB(buff), UTL_RAW.CAST_TO_RAW(buff));
    
    -- 如果字符串过长,需分为多次放入blob中,否则会超出varchar2的长度限制
    buff := '第二段字符串....省略一万字....';
    -- 再次向blob中追加内容
    dbms_lob.writeAppend(content, LENGTHB(buff), UTL_RAW.CAST_TO_RAW(buff));

    INSERT INTO "TABLENAME" ("ID", "F_BLOB") VALUES (1, content);
    commit;
END;
复制代码

 

posted @   harara  阅读(607)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤
点击右上角即可分享
微信分享提示