zoukankan      html  css  js  c++  java
  • Clob对象转换为String

      /**
         * @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 ;
  • 相关阅读:
    为什么我会被淘汰?
    2017-3-27日碎碎念
    (原创)我对未来的人类的发展,以及AI技术发展的一些思考。
    八大排序算法图文讲解
    PE病毒初探——向exe注入代码
    [转]Patch文件结构详解
    芝麻信用商家接入指南
    如何成为一名好的程序员的一些个人经验
    .NET CoreCLR开发人员指南(上)
    七牛云:ckeditor JS SDK 结合 C#实现多图片上传。
  • 原文地址:https://www.cnblogs.com/Lightning-Kid/p/5106118.html
Copyright © 2011-2022 走看看