`
yangpanwww
  • 浏览: 624931 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

通用的包+存储过程(Oracle)

阅读更多

 创建包:

 并且指定要调用的存储过程
 

CREATE OR REPLACE PACKAGE PKG_JSJ_TJ  --BODY PKG_JSJ_TJ 包名,可以自己定义
AS
    TYPE my_cursor IS REF CURSOR;
      --GET_gyjmx 为要调用的存储过程
    PROCEDURE GET_gyjmx(nf In Varchar2 ,p_rc OUT my_cursor);
      ---下面还可以写多个要调用的存储过程
    ---PROCEDURE GET_gyjmx2(nf In Varchar2 ,....);

END PKG_JSJ_TJ;

 

    

   包下面的 存储过程的通用写法:

   下面是包的主体:

CREATE OR REPLACE PACKAGE BODY PKG_JSJ_TJ --BODY PKG_JSJ_TJ 包名,和上面的一样
AS
    --sex 输入的参数,可以为多个。
    --p_rc  输出的参数,接收的时候可以ResultSet接收一个结果集
    --GET_gyjmx 存储过程名
    PROCEDURE GET_gyjmx(v_sex In Varchar2 ,p_rc OUT my_cursor)
    Is

    Begin
        OPEN p_rc For --开启这个游标
        ----下面是一些要做的事情
         select id,name,sex from user_table where sex = v_sex;
        ----结束
    End GET_gyjmx; --记得结束啊
    
    -----------------可以写多个存储过程,复制上面的存储过程,改下名字,如:----------------------------
   PROCEDURE GET_gyjmx2(var In Varchar2 ,p_rc OUT my_cursor)
    Is

    Begin
        OPEN p_rc For --开启这个游标
        ----下面是一些要做的事情
        ---执行SQL
        ----结束
    End GET_gyjmx2; --记得结束啊
   
    
    
END PKG_JSJ_TJ;  --记得结束啊

 嘿嘿。。下次使用。。就可以直接套用了。。。。

  

 调用的方法是 :包名.存储过程名称(参数1,参数2,....),

 

  下面是调用这个存储过程get_gyjmx的代码:

  

String call = "{call pkg_jsj_tj.get_gyjmx(?,?)}";
  CallableStatement proc=conn.prepareCall(call);  //调用存储过程
  proc.setString(1,sex);  //给输入参数传值
  proc.registerOutParameter(2,OracleTypes.CURSOR);//声明输出参数是什么类型的
  proc.execute();   //执行
   
  ResultSet rest = (ResultSet) proc.getObject(2); 

 

分享到:
评论

相关推荐

    ETL通用解决方案_oracle+存储过程实现.doc

    在“ETL通用解决方案_oracle+存储过程实现”中,主要探讨了如何利用Oracle数据库和存储过程来实现这一过程。以下是该方案涉及的主要知识点: 1. **数据规格化**:这是数据处理的第一步,确保数据的一致性和标准化,...

    通用的在线考试系统(jsp+struts+hibernate+oracle)-project

    《通用的在线考试系统:基于JSP+Struts+Hibernate+Oracle的技术实现》 在线考试系统作为一种现代化的教学管理工具,已经广泛应用于教育领域,它能够有效地进行考试组织、试题管理和成绩统计,极大地提高了教学效率...

    springboot mybatis 动态调用oracle存储过程,通过存储过程名称,就能动态调用存储过程、java动态调用or

    能不能写个动态的业务,只输入存储过程名称,自动获取存储过程参数,并且参数的数据从前台传递过来,这个就通用了。只写一个通用方法,就可以调用所有的存储过程。只根据输入不同的存储过程名称、参数内容,自动调用...

    Oracle通用数据库存储过程代码--高效分页存储过程

    ### Oracle通用数据库存储过程代码——高效分页存储过程解析 #### 标题解析 标题“Oracle通用数据库存储过程代码——高效分页存储过程”表明这是一个适用于Oracle数据库的存储过程,主要用于实现高效的分页查询功能...

    通用的在线考试系统(jsp+struts+hibernate+oracle).zip

    Oracle数据库作为系统的后台存储,提供了强大的数据管理和事务处理能力。Oracle以其稳定性、安全性及高性能闻名,尤其适合处理大量并发的在线考试场景。在这个系统中,数据库设计应包含如用户表、科目表、试卷表、...

    jsp源码通用的在线考试系统(jsp+struts+hibernate+oracle)

    ### jsp源码通用的在线考试系统(jsp+struts+hibernate+oracle) #### 知识点一:JSP技术概述 JSP(JavaServer Pages)是一种基于Java技术的服务器端脚本语言,用于生成动态网页内容。它允许在HTML页面中嵌入Java...

    通用的在线考试系统(jsp+struts+hibernate+oracle)130220.zip

    《通用的在线考试系统:基于JSP、Struts、Hibernate和Oracle的技术实现》 在线考试系统作为现代教育信息化的重要组成部分,极大地提升了教学效率和管理便捷性。本系统以"通用的在线考试系统(jsp+struts+hibernate+...

    JAVA调用ORACLE存储过程通用类

    ### JAVA调用ORACLE存储过程通用类 #### 概述 在Java开发中,经常会遇到需要与数据库交互的情况,特别是当涉及到复杂的业务逻辑时,利用数据库的存储过程可以有效地提高程序性能并简化代码结构。本篇文章将详细...

    通用的在线考试系统(jsp+struts+hibernate+oracle)130220.rar

    《通用的在线考试系统:基于JSP+Struts+Hibernate+Oracle的技术实现》 在线考试系统作为现代教育技术的重要组成部分,极大地提升了教学效率和学习体验。本系统采用经典的Java Web开发框架,即JSP(JavaServer Pages...

    JAVA 开发通用的在线考试系统(jsp+struts+hibernate+oracle)130220.zip

    《JAVA 开发通用的在线考试系统:jsp+struts+hibernate+oracle技术解析》 在信息技术高速发展的今天,教育领域也开始广泛应用在线考试系统,以提高教学效率和评测的公正性。本项目“JAVA 开发通用的在线考试系统...

    C#语言SQL+Access+Oracle通用版数据库操作类源码

    在IT领域,数据库操作是开发过程中的重要环节,无论是在Web应用、桌面应用还是移动应用中,都需要与数据库进行交互来存储和检索数据。在这个场景中,我们关注的是使用C#语言实现对SQL Server、Access和Oracle这三种...

    通用的在线考试系统(jsp+struts+hibernate+oracle).rar

    《通用的在线考试系统:基于JSP+Struts+Hibernate+Oracle的技术实现》 在线考试系统作为现代教育技术的重要组成部分,极大地推动了教学方式的变革。本系统采用经典的Java Web开发框架,即JSP(JavaServer Pages)、...

    通用ORACLE存储过程实现分页和查询

    为了优化,可以考虑使用Oracle的ROW_NUMBER()函数配合窗口函数,但这需要在查询中进行调整,可能不再适合作为通用存储过程。 总结来说,Oracle存储过程实现分页查询的关键在于动态构造SQL语句,结合ROWNUM或ROW_...

    JAVA 开发通用的在线考试系统(jsp+struts+hibernate+oracle).zip

    标题中的“JAVA 开发通用的在线考试系统(jsp+struts+hibernate+oracle)”表明这是一个基于Java技术栈开发的、适用于各种考试场景的Web应用程序。它利用了四个核心的技术:JSP(JavaServer Pages)、Struts、...

Global site tag (gtag.js) - Google Analytics