关于Oracle中的BLOB字段的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Oracle中的BLOB字段的问题相关的知识,希望对你有一定的参考价值。
现在有BLOB字段中已经有数据了,可能是图片,可能文本,还可能是其它的文件,我想知道如何获取BLOB字段中文件类型?急用,答对了加分!
找一下什么属性?怎么对照?麻烦您说明白点?
还是不可以,如果是声音呢。我想要获得的是详细的文件类型。
我现在是C#写的。
具体怎么实现 网上有 搜索一下就行了
1 自己先写一个存储过程
2 定义CLOB变量 用来接受BLOB的值
3 输出CLOB变量的值
步骤大致就是这样的 希望对你有帮助 参考技术A 1。看这个行不:select * from user_lobs;
2。用VB或C,或ASP。。。等将字段输出,
如果显示乱码,就是图片。
如果正常显示,就是文本。
3。
下面的例子是取前32k的clob的例子
你根据自己的要求修改一下
--create test table
create table t_clob
(id number,
col_lob clob
);
/
--create function to return value of lob type column
CREATE OR REPLACE FUNCTION GET_LOB(id number)
return varchar2
IS
l_buffer varchar2(32767);
l_amount number := 32767;
l_blob CLOB;
v_id number;
BEGIN
v_id := id;
SELECT col_lob
INTO l_blob
FROM t_clob
WHERE id = v_id;
DBMS_LOB.READ (l_blob, l_amount, 1, l_buffer);
return l_buffer;
EXCEPTION
WHEN OTHERS THEN
RAISE;
END;
--test case
SELECT A.ID,GET_LOB(id)
FROM T_CLOB A
WHERE A.ID = 1;
参考资料:ORACLE这个更专业:www.itpub.net
参考技术B 你找一下属性,再对照一下.不同oracle版本对blob字段处理方式
SSH框架,在向oracle11g中插入图片时提示信息。
图片为byte[]对应数据库中的blob字段,错误原因是oracle版本问题,不同的版本处理方式不同。
Spring.xml配置
oracle9的处理方式:
<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor" lazy-init="true" />
<bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">
<property name="nativeJdbcExtractor">
<ref bean="nativeJdbcExtractor" />
</property>
</bean>
oracle11的处理方式:
<bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler" lazy-init="true" />
ibatis 使用:
<insert id="insertExcel" parameterClass="java.util.Map">
insert into xzxk_spsc_sqclfj
(wordid, tepid, tepcategory, buspkey, wordname, wordsize, wordcontent, createdate, createman, wordnew, wordremark,fileextname)
values
(#WORDID#, #TEPID#, #TEPCATEGORY#, #BUSPKEY#, #WORDNAME#, #WORDSIZE#, #WORDCONTENT,handler=org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler#, sysdate, #CREATEMAN#, #WORDNEW#, #WORDREMARK#,#FILEEXTNAME#)
</insert>
以上是关于关于Oracle中的BLOB字段的问题的主要内容,如果未能解决你的问题,请参考以下文章