码迷,mamicode.com
首页 > 其他好文 > 详细

Clob对象转换为String

时间:2016-01-06 17:47:59      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:

  /**
     * @title: clobParseString
     * @description:TODO Clob对象转换为String
     * @author: yubo  
     * @param clob
     * @return
     * @throws SQLException
     * @date:2016-1-6下午4:01:42
     */
    public static String clobParseString(Clob clob) throws SQLException{
        String result = "";
        if(clob != null){
            result = clob.getSubString((long)1,(int)clob.length());
        }
        return result;
    }

 行转列oracle:

create or replace type type_concatstr_clob as object
(
  total  clob,
  static function ODCIAggregateInitialize(sctx IN OUT type_concatstr_clob) return number,
  member function ODCIAggregateIterate(self IN OUT type_concatstr_clob,value IN clob) return number,
  member function ODCIAggregateTerminate(self IN type_concatstr_clob,returnValue OUT clob,flags IN number) return number,
  member function ODCIAggregateMerge(self IN OUT type_concatstr_clob,ctx2 IN type_concatstr_clob) return number
)
/

create or replace type body type_concatstr_clob
is
  --在concatstr的基础上改写
  static function ODCIAggregateInitialize(sctx IN OUT type_concatstr_clob) return number
  is
  begin
    sctx := type_concatstr_clob(null);
    return ODCIConst.Success;
  end;

  member function ODCIAggregateIterate(self IN OUT type_concatstr_clob,value IN clob) return number
  is
  begin
    self.total := self.total || , || value;
    return ODCIConst.Success;
  end;

  member function ODCIAggregateTerminate(self IN type_concatstr_clob,returnValue OUT clob,flags IN number) return number
  is
  begin
    returnValue := ltrim(self.total,,);
    return ODCIConst.Success;
  end;

  member function ODCIAggregateMerge(self IN OUT type_concatstr_clob,ctx2 IN type_concatstr_clob) return number
  is
  begin
    self.total := self.total || ctx2.total;
    return ODCIConst.Success;
  end;
end;
/
create or replace function f_concatstr_clob(input varchar2) return clob
  parallel_enable
  aggregate using type_concatstr_clob;

For example:

SELECT u.c_agencyname FROM (
SELECT f_concatstr_clob(e.c_agencyno||:||e.c_agencyname) c_agencyname FROM   tagencyinfo e) u ;

 

Clob对象转换为String

标签:

原文地址:http://www.cnblogs.com/Lightning-Kid/p/5106118.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!