ITPub博客

首页 > 应用开发 > Java > 存储过程返回数据集

存储过程返回数据集

Java 作者:85579711 时间:2014-03-27 11:06:58 0 删除 编辑

一、定义包头

    CREATE OR REPLACE  PACKAGE TEST_PACKAGE  is

    type testResultSet is ref cursor;
    end test_package;
    in string,  resultSet out test_package.testResultSet)
as
Begin
       open resultSet for
       select * from test;
End;
        try {
           CallableStatement pst = cnn.prepareCall("call TEST_PROCEDURE(?,?)");
           pst.setString(1, "11");
           pst.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR);
           pst.execute();
           ResultSet set = (ResultSet)pst.getObject(2);
           while (set.next()) {
                System.out.println(set.getString(1));
           }
           pst.close();
           pst = null;
      } catch (Exception e) {
           e.printStackTrace();
      }
 }


二、编写存储过程

    CREATE OR REPLACE  PROCEDURE "RM"."TEST_PROCEDURE"  (templateid

三、编写JAVA函数调用存储过程

    public static void getValue() {
        try {
           CallableStatement pst = cnn.prepareCall("call TEST_PROCEDURE(?,?)");
           pst.setString(1, "11");
           pst.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR);
           pst.execute();
           ResultSet set = (ResultSet)pst.getObject(2);
           while (set.next()) {
                System.out.println(set.getString(1));
           }
           pst.close();
           pst = null;
      } catch (Exception e) {
           e.printStackTrace();
      }
 }

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29063131/viewspace-1130531/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-07-22

  • 博文量
    39
  • 访问量
    101085