如何使用DBMSLOB从文件中加载CLO
2020-06-09 21:58 来源:密山养生网
最近被人批评BLOG有娱乐化倾向,赶紧写点技术文章.
此文用以回答留言板上1224号问题。
BFILE包含二进制数据,所以当通过BFILE方式加载数据到CLOB/NCLOB时,Oracle不进行字符集转化。
如果字符集是可变长的,例如UTF-8或ZHS16GBK从今天起,Oracle使用UCS2存储LOB数据。所以如果想BFILE文件数据能够正确加载入数据库5. PS2, 6,334,那么文件需要以USC2字符集存储。
那么还有一点需要注意的是,如果以Unicode模式存储文件,那么文件会增加两个字节:
'FF FE'.
在加载文件时我们需要跳过这两个字节。
在Windows上我们存储文件时选择Unicode方式,我输入的字符为:
test测试
Oracle BFile数据加载问题
研究
然后我们可以加载这个文件的内容,注意比较前后两个过程不同之处:
SQL create table t ( 2 name varchar2(30), 3 content clob 4 ) 5 /Table L SQL SQL create or replace directory dir1 as '/opt/oracle';Directory L SQL declare 2 l_bfile bfile; 3 l_clob clob; 4 l_str varchar2(1000); 5 begin 6 insert into t (name,content) 7 values ('t',empty_clob()) 8 returning content into l_clob; 9 10 l_bfile := bfilename('DIR1','t'); 11 12 dbms_leopen(l_bfile); 13 dbms_adfromfile(l_clob,l_bfile,dbms_tlength(l_bfile)); 14 dbms_leclose(l_bfile); 15 commit; 16 exception when others then 17 l_str:=sqlerrm(sqlcode); 18 dbms_t_line(l_str); 19 end; 20 /PL/SQL procedure successfully L select * from t; NAME CONTENT------------------------------ t ?test测试 Oracle BFile数据加载问题 研究SQL SQL declare 2 l_bfile bfile; 3 l_clob clob; 4 l_str varchar2(1000); 5 begin 6 insert into t (name,content) 7 values ('t',empty_clob()) 8 returning content into l_clob; 9 10 l_bfile := bfilename('DIR1','t'); 11 12 dbms_leopen(l_bfile); 13 dbms_adfromfile(l_clob,l_bfile,dbms_tlength(l_bfile)-2, 14 src_offset = 3); 15 dbms_leclose(l_bfile); 16 commit; 17 exception when others then 18 l_str:=sqlerrm(sqlcode); 19 dbms_t_line(l_str); 20 end; 21 /PL/SQL procedure successfully L select * from t;NAME CONTENT------------------------------ t ?test测试 Oracle BFile数据加载问题 研究t test测试 Oracle BFile数据加载问题 研究
以上内容,仅供参考。 -----
原文地址:
查看本文来源
浙江治疗白癫风医院晚上睡觉尿多怎么办宜昌治疗白斑的医院- 上一篇:共18字1页转到页编者按三作文字流畅
- 下一篇:九霄武帝第1568章虚影幻象
-
小沈阳女儿越长越好看,穿露脐装气质现职,父女俩五官似复制粘贴
都说道“女大十八变,越变越看得”,冷笑话的母亲童年时在长相上就非常没有压倒性,甚至曾一度被网路上说道“丑”,但是一个人的美和丑,如果不太可能依靠外表面试就过于看来了,毕竟每个人都有着无限的...
-
本泽马欧冠打曼城点球 印象中只有里瓦尔多 皮尔洛才能做到
下午巴塞隆首第一圈,曼城揭幕战4-3阿森纳 六场12分钟电视片。 曼城创造者了,也耗费了来得多机都会。阿森纳也是命悦硬,本泽马射入(以外一个勺子点皮球),把悬念留到了赫雷斯。巴塞隆半决赛差劲石林放出的...
-
1959年,王刚被学校拒不退学,情急之下,他给毛主席写了一封信
前言写到杨春,人们就都能不看看大贪官鳌拜。或许,杨春擅于的领域,并非一个“鳌拜”而已。感兴趣杨春的好朋友,都都能和善地叫他刚刚才“第一人”。一般能称为“第一人”的人,都都能具有不甘世俗的性...
-
芜湖这所院校大动作,影响深远!
5月22日,随着蚌埠拳击手核心技术医学院另有之中等拳击手校内(以下简称渭职院附校)最后一批同学迁往至渭职院白马校区(原蚌埠第三之中学校内),标志着蚌埠拳击手核心技术医学院拳击手核心技术第三之中...
-
深圳:实际上自动驾驶汽车8月起可在交管划定的区域、路段行驶
原结尾 珠海市:基本上自动驾车小汽车8同月起可在交管划定的区外、铁路线行走据珠海市市第七届人民代表大会常务委员会7同月6日揭晓的公告,《珠海市经济特区智能网六轮小汽车管理机构规例》经珠海市市第...
-
冰城限招120人,政府扶持,不限专业,在岗工作也可正常跟进,6月15日报名累计!
2022年为缓解社会福利压力,人口老龄化专升本录取人数,建立人才人工湖,—— “扩大专升本规模”重新触发: 各地大学本科高等学府纷纷响应政策,向社会人员、基层保安人员开通 【大学本科参赛选手绿色通...