日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle将字符串转化为blob,oracle String类型转换成blob类型插入

發布時間:2025/3/12 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle将字符串转化为blob,oracle String类型转换成blob类型插入 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CERT_1以前是varchar(3000),現在的類型是blob類型,做數據庫遷移時,使用導入工具不能直接導入,所以使用SQL,下面是SQL

declare

directions????? BLOB;

amount????????? BINARY_INTEGER;

offset????????? INTEGER;

first_direction VARCHAR2(3000);

more_directions VARCHAR2(3000);

CURSOR c_TB1 Is

(

Select CERT_ID as ids, CERT_1 as blb From uaapra.tb_user_cert tb1 where CERT_1 is not null);

v_ids integer ;

begin

OPEN c_TB1;

LOOP

fetch c_TB1

into v_ids, first_direction;

update tb_user_cert set cert_1? = empty_blob() where cert_id? = v_ids; --更新和新增一樣要將BLOB字段設置為EMPTY_BLOB()

select cert_1? into directions from tb_user_cert where cert_id? = v_ids for update; --一定要用for update鎖住記錄,否則

--DBMS_LOB.OPEN會出錯

DBMS_LOB.OPEN(directions, DBMS_LOB.LOB_READWRITE);

amount := LENGTHB(first_direction); --number of characters to write

--有中文必須用LENGTHB

offset := 1; --begin writing to the first character of the CLOB

DBMS_LOB.WRITE(directions,

amount,

offset,

UTL_RAW.cast_to_raw(first_direction));

--UTL_RAW.cast_to_raw函數將字符串轉換成二進制數

DBMS_LOB.CLOSE(directions);

EXIT WHEN c_TB1%NOTFOUND;

END LOOP;

COMMIT;

CLOSE c_TB1;

end;

總結

以上是生活随笔為你收集整理的oracle将字符串转化为blob,oracle String类型转换成blob类型插入的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。