执行存储过程

原创 2017年01月03日 15:31:03
/**变电精益化
**/ 
Map in = new HashMap();
        /** 测试数据 **/
        // in.put("1", "1");
        // in.put("2", "317b2be9b240288188423159720142317b2b4b0126");
        /** 正式 **/
        in.put("1", ids.toString());
        in.put("2", dzid);
        Map out = new HashMap();
        out.put("3", Types.VARCHAR);
        Map m = hibernateDao.executeProcedureOrderByParams(
                "{call pkg_zh_bdjyh_cjsb.p_cjsb(?,?,?)}", in, out);

/**图数关联
**/

//创建存储过程
create or replace procedure t_dw_tsgl_pdjggl(jg out varchar2)
is
/*******************************************************************************
  中文名称:  判断间隔的关联
  调用方法:  p_zh_hw_gzzd
  作    者:  石蕴杰
  创建时间:  2016-04-14
  数据版本:  Oracle 10
  输入参数:
  输出参数:
  简要说明:  根据传入,查出关联和未关联的数据
  修改记录:
  *******************************************************************************/
v_sql varchar2(3000);
type recs is ref cursor;
t_cursor recs;
begin
  v_sql:='select oid from dwzy.T_TX_ZNYC_JGDY dz where dydj =''8'' and yxdw=''1096FA0035D17535E05379FB50152705''';
  open t_cursor for v_sql;
--   execute immediate v_sql;
  loop
    fetch t_cursor into jg;
    exit when t_cursor%notfound;
    end loop;
   end;
   --end t_dw_tsgl_pdjggl; 

//执行存储过程 
Map in = null;
           Map out = new HashMap();
           out.put("0", Types.VARCHAR);
           Map resultMap = hibernateDao.executeProcedure("{call scyw.t_dw_tsgl_pdjggl(?)}",in,out);  



/**存储过程返回数据集,要先建一个包
**/
/*
图数关联包
*/
create or replace package pkg_tsgl as 
type myrctype is ref cursor;--先自定义一个类型,一会用来返回查询的记录集
procedure gettxsj(prc out myrctype);
end pkg_tsgl;

/**再建一个包的实体
**/
create or replace package body pkg_tsgl as
--type myrctype is ref cursor;--先自定义一个类型,一会用来返回查询的记录集
procedure gettxsj(prc out myrctype)
  is
  v_sql varchar2(3000);
--type recs is ref cursor;
--t_cursor recs;
begin
  v_sql:='select oid from dwzy.T_TX_ZNYC_JGDY dz where dydj =''8'' and yxdw=''1096FA0035D17535E05379FB50152705''';
  open prc for v_sql;
--   execute immediate v_sql;
 -- loop
   -- fetch t_cursor into jg;
   -- exit when t_cursor%notfound;
   -- end loop;
   end gettxsj;
end pkg_tsgl;  

/**后台查出执行结果
**/
   /**
        * 加载图形表数据
        */
       @SuppressWarnings("rawtypes")
    public QueryResultObject loadtxList(RequestCondition params) {
           QueryResultObject qro = new QueryResultObject();
           Map in = null;
           Map out = new HashMap();
           out.put("0", Types.VARCHAR);
           Map resultMap = hibernateDao.executeProcedure("{call scyw.t_dw_tsgl_pdjggl(?)}",in,out);
           List result = new ArrayList();
           result.add(resultMap);
           Map out2 = new HashMap();
           out2.put("0", oracle.jdbc.OracleTypes.CURSOR);
//           hibernateDao.executeProcedure(arg0)
           resultMap = hibernateDao.executeProcedure("{call scyw.pkg_tsgl.gettxsj(?)}",in,out2);
           qro.setItems(result);
           return  qro;
       }  

相关文章推荐

分页存储过程执行

  • 2013年11月29日 09:24
  • 5KB
  • 下载

sql存储过程解密工具(执行程序)

  • 2009年05月01日 10:35
  • 2.73MB
  • 下载

mysql如何让一个存储过程定时执行

mysql怎么让一个存储过程定时执行 查看event是否开启: show variables like '%sche%';  将事件计划开启: set global event_scheduler...

Asp执行msSql(存储过程)

  • 2008年04月26日 20:54
  • 179B
  • 下载

C#执行SQL的存储过程

  • 2008年02月29日 10:20
  • 2KB
  • 下载

mysql 方法或者存储过程执行慢的调试方法

第一步:修改/etc/my.cnf文件,找到[mysqld] 里面加入 #执行的sql log=/tmp/logs/mysqld.log #记录sql执行超过下面设置时间的sql log-slo...

记录存储过程的执行次数脚步

  • 2014年10月15日 09:14
  • 5KB
  • 下载

SqlServer游标、存储过程及数据块执行

数据块游标事例如下: begin declare @item_code varchar(32)--定义变量 declare @item_name varchar(32) declare @...

执行Sqlserver存储过程返回DataSet

  • 2012年03月09日 10:15
  • 3KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:执行存储过程
举报原因:
原因补充:

(最多只允许输入30个字)