文档章节

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

深圳大道
 深圳大道
发布于 2016/12/29 15:36
字数 239
阅读 6
收藏 0
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");

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/7900010

深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
Python基础之函数

Python基础之函数 一、函数基础 1、函数概念: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 2、函数的作用 (1)减少重复代码 (2)使程...

Dayi_123
2017/04/20
0
0
MySQL存储过程_创建-调用

存储过程:SQL中的“脚本”     创建存储过程     调用存储过程     存储过程体     语句块标签 存储过程的参数     in:向过程里传参     out:过程向外传参值   ...

zsdnr
2017/07/21
0
0
Oracle Procedure记录

1、定义 所谓存储过程(Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过 编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存...

wolihaito
2018/03/26
0
0
Oracle—自定义function语法

用户自定义函数是存储在数据库中的代码块,可以把值返回到调用程序。函数的参数有3种类型: (1)in参数类型:表示输入给函数的参数,该参数只能用于传值,不能被赋值。 (2)out参数类型:表...

MiniBu
2014/05/15
5.8K
0
ORACLE存储过程调用Web Service

1概述 最近在ESB项目中,客户在各个系统之间的服务调用大多都是在oracle存储过程中进行的,本文就oracle存储过程调用web service来进行说明。其他主流数据库,比如mysql和sql service,调用w...

数通畅联
2016/11/08
40
0

没有更多内容

加载失败,请刷新页面

加载更多

医疗在线客服咨询系统有哪些特点?

随着中国互联网网站的的快速发展,至今医疗行业已经拥有了独立的的运营网站,其中最具特色的便属于医疗在线客服咨询系统,医疗在线客服咨询系统为每个访问网站的患者提供即时的网络在线客服服...

唯喏
25分钟前
6
0
skywalking(容器部署)

skywalking(容器部署) 标签(空格分隔): APM [toc] 1. Elasticsearch SkywalkingElasticsearch 5.X(部分功能报错、拓扑图不显示) Skywalking需要Elasticsearch 6.X docker network create......

JUKE
32分钟前
7
0
解决Unable to find a single main class from the following candidates [xxx,xxx]

一、问题描述 1.1 开发环境配置 pom.xml <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!--一定要对上springboot版本号,因......

TeddyIH
33分钟前
7
0
玩转Spring Boot 注册Servlet、Filter、Listener

玩转Spring Boot 注册Servlet、Filter、Listener JAVA架构师Ya七月 2019-08-23 玩转Spring Boot 注册Servlet、Filter、Listener 在Servlet 3.0之前我们都是使用web.xml进行配置,需要增加Ser...

Java架构师ya七
35分钟前
4
0
Dubbo服务限制大数据传输抛Data length too large: 13055248, max payload: 8388608解决方案

当dubbo服务提供者向消费层传输大数据容量数据时,会受到Dubbo的限制,报类似如下异常: 2019-08-23 11:04:31.711 [ DubboServerHandler-XX.XX.XX.XXX:20880-thread-87] - [ ERROR ] [com.al...

huangkejie
36分钟前
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部