clob类型转换为string类型的orcal函数
2012-01-09 18:05
302 查看
create or replace function clob_to_string(
table_name in varchar2,
field_id in varchar2,
field_name in varchar2,
v_id in number,
v_pos in number) return varchar2
is
lobloc clob;
buffer varchar2(32767);
amount number := 2000;
offset number := 1;
query_str varchar2(1000);
begin
query_str := 'select '||field_name|| ' from '||table_name|| ' where '||field_id|| '= :id ';
EXECUTE IMMEDIATE query_str INTO lobloc USING v_id;
offset:=offset+(v_pos-1)*2000;
dbms_lob.read(lobloc,amount,offset,buffer);
return buffer;
exception
when no_data_found then
return buffer;
end;
CREATE OR REPLACE FUNCTION CLOB_TO_STRING (clob_in IN CLOB) RETURN CLOB
AS
offset INTEGER;
amount INTEGER;
output VARCHAR2(32767);
BEGIN
offset := 1;
amount := 32767;
LOOP
DBMS_LOB.read(clob_in,amount,offset,output);
--DBMS_OUPUT.PUT_LINE(output);
offset := offset + amount;
END LOOP;
return output;
EXCEPTION
WHEN NO_DATA_FOUND THEN
return output;
END CLOB_TO_STRING;
SELECT
c.catentry_id,xcs.store_id,xcs.field2 as author,
(select xcac.content from X_CATENTRY_ATTR_CLOB xcac where c.catentry_id = xcac.catentry_id(+) and xcs.store_id = xcac.store_id(+))
as fieldsAll,
sc.catalog_id,c.partnumber,g.member_id,null as parentCatentry_id,c.catenttype_id,
table_name in varchar2,
field_id in varchar2,
field_name in varchar2,
v_id in number,
v_pos in number) return varchar2
is
lobloc clob;
buffer varchar2(32767);
amount number := 2000;
offset number := 1;
query_str varchar2(1000);
begin
query_str := 'select '||field_name|| ' from '||table_name|| ' where '||field_id|| '= :id ';
EXECUTE IMMEDIATE query_str INTO lobloc USING v_id;
offset:=offset+(v_pos-1)*2000;
dbms_lob.read(lobloc,amount,offset,buffer);
return buffer;
exception
when no_data_found then
return buffer;
end;
CREATE OR REPLACE FUNCTION CLOB_TO_STRING (clob_in IN CLOB) RETURN CLOB
AS
offset INTEGER;
amount INTEGER;
output VARCHAR2(32767);
BEGIN
offset := 1;
amount := 32767;
LOOP
DBMS_LOB.read(clob_in,amount,offset,output);
--DBMS_OUPUT.PUT_LINE(output);
offset := offset + amount;
END LOOP;
return output;
EXCEPTION
WHEN NO_DATA_FOUND THEN
return output;
END CLOB_TO_STRING;
SELECT
c.catentry_id,xcs.store_id,xcs.field2 as author,
(select xcac.content from X_CATENTRY_ATTR_CLOB xcac where c.catentry_id = xcac.catentry_id(+) and xcs.store_id = xcac.store_id(+))
as fieldsAll,
sc.catalog_id,c.partnumber,g.member_id,null as parentCatentry_id,c.catenttype_id,
相关文章推荐
- 将数据库查出的clob类型转换为String
- 将数据库中查出的Clob类型转换为String类型
- Clob类型转换成String类型
- Clob类型转换成String类型
- Oracle中Clob类型的字段数据转换成String字符串
- Clob类型与String类型的相互转换
- Clob转换成String类型
- Clob类型转换成String类型
- String怎么样可以转换成clob类型
- Oracle 中Clob 字段,转换为 String 类型
- Clob类型与String类型的相互转换
- Clob类型转换成String类型
- java获取数据库CLOB类型,并转换为String类型
- Blob,Clob类型转换String
- 将数据库中Clob类型转换成java的String类型
- Clob类型转换成String类型
- Clob类型转换成String类型
- Oracle数据库中CLOB类型字段取出转换String类型方法
- 【转】Object到String类型转换的四种方式
- JAVA中int、String的类型转换