• Oracle中存储过程中赋值和传参及程序调用返回DS


    create or replace procedure EMPLOYEEMOVE_PROCE
    (
        QUERYYEAR   in varchar2,
        QUERYMONTH in varchar2,
        CUSTOMERID in varchar2,
        CUSTOMERSERVICE in varchar2,
        p_GetData  out GetDataSet.GETCUR
    )
    AS
      STRSQL  varchar2(10000);
      STRWHERE varchar2(200);
    begin
    
     IF (CUSTOMERID IS NOT NULL)  THEN
         STRWHERE := ' AND 客户编码='|| CUSTOMERID;
     END IF;   
     IF (CUSTOMERSERVICE IS NOT NULL) THEN 
         STRWHERE := STRWHERE || ' AND 客服专员='|| CUSTOMERSERVICE;
      END IF;     
        
            
      STRSQL :=
        'SELECT 客服专员,客户编码,客户名称,所属员工总数,所属员工累计离职数,所属员工在职数,当月新进员工数,当月离职员工数,差数
        FROM  t6
        WHERE  1=1 ';
        open p_GetData for (STRSQL || STRWHERE);
    end;
    
    --包体
    
    CREATE OR REPLACE PACKAGE GetDataSet IS
        TYPE GETCUR IS REF CURSOR;
    END GetDataSet;
    CREATE OR REPLACE PACKAGE GetDataSet IS
        TYPE GETCUR IS REF CURSOR;
    END GetDataSet;
    
    	   DataSet ds = new DataSet();
    
                OracleParameter[] param = new OracleParameter[] 
                        { 
                            new OracleParameter("QUERYYEAR", OracleType.VarChar),
                            new OracleParameter("QUERYMONTH", OracleType.VarChar), 
                            new OracleParameter("CUSTOMERID", OracleType.VarChar), 
                            new OracleParameter("CUSTOMERSERVICE", OracleType.VarChar), 
                            new OracleParameter("p_GetData", OracleType.Cursor) 
                        };
                param[0].Value = QueryYear;
                param[1].Value = QueryMonth;
                param[2].Value = EmCompanyValue;
                param[3].Value = EmployID;
    
                param[0].Direction = ParameterDirection.Input;
                param[1].Direction = ParameterDirection.Input;
                param[2].Direction = ParameterDirection.Input;
                param[3].Direction = ParameterDirection.Input;
                param[4].Direction = ParameterDirection.Output;
    
                ds = Maticsoft.DBUtility.DbHelperOra.RunProcedure("EMPLOYEEMOVE_PROCE", param, "queryTable");

  • 相关阅读:
    libnids-1.24 使用源码问题
    Linux学习man page
    shell 脚本,提取文件中的内容
    shell中的语法(1)
    python 爬取百度翻译进行中英互译
    matlab等高线绘制
    matlab 对tif数据高程图的处理分析
    python网络爬虫与信息提取 学习笔记day3
    python网络爬虫与信息提取 学习笔记day2
    python网络爬虫与信息提取 学习笔记day1
  • 原文地址:https://www.cnblogs.com/smartsmile/p/6234455.html
Copyright © 2020-2023  润新知