oracle分页存储过程 oracle存储过程实例

 更新时间:2014年01月21日 15:19:41   作者:  
这篇文章主要介绍了oracle存储过程实例,实现oracle查询数据分页,大家参考使用吧

复制代码 代码如下:

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestPage {

 public TestPage() {
 }
 public static void main(String[] args) {
  String driver = "oracle.jdbc.driver.OracleDriver";
  String strUrl = "jdbc:oracle:thin:@localhost:1521:xmgl";
  String username = "xmgl";
  String password = "xmgl";
  Statement stmt = null;
  ResultSet rs = null;
  Connection conn = null;
  try {
   Class.forName(driver);
   conn = DriverManager.getConnection(strUrl, username, password);
   System.out.println("ok");
   CallableStatement cs = null;
   //创建CallableStatement
   cs = conn.prepareCall("{call page.fenye(?,?,?,?,?,?)}");
   cs.setString(1, "mytest");//表名
   cs.setInt(2, 3);//显示几条记录
   cs.setInt(3, 1);//第几页
   //注册总记录数,声明输出参数是什么类型的
   cs.registerOutParameter(4,oracle.jdbc.OracleTypes.INTEGER);
   //注册总页数
   cs.registerOutParameter(5,oracle.jdbc.OracleTypes.INTEGER);
   //注册返回的结果集
   cs.registerOutParameter(6,oracle.jdbc.OracleTypes.CURSOR);
   cs.execute();
   //取出总记录数 /这里要注意,getInt(4)中4,是由该参数的位置决定的
   int rowNum=cs.getInt(4);//获得输出参数
   int pageCount = cs.getInt(5);
   rs=(ResultSet)cs.getObject(6);

   System.out.println("rowNum="+rowNum);
   System.out.println("总页数="+pageCount);
   while (rs.next()) {
    System.out.println("编号:"+rs.getInt(1)+" 名字:"+rs.getString(2)+" 密码:"+rs.getString(3));
   }
  } catch (SQLException ex2) {
   ex2.printStackTrace();
  } catch (Exception ex2) {
   ex2.printStackTrace();
  } finally {
   try {
    if (rs != null) {
     rs.close();
     if (stmt != null) {
      stmt.close();
     }
     if (conn != null) {
      conn.close();
     }
    }
   } catch (SQLException ex1) {
   }
  }
 }
}

相关文章

  • ORACLE批量导入图片到BLOB字段代码示例

    ORACLE批量导入图片到BLOB字段代码示例

    这篇文章主要介绍了ORACLE批量导入图片到BLOB字段代码示例,此代码示例是文章作者的项目源码,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • ORACLE创建DBlink的过程及使用方法

    ORACLE创建DBlink的过程及使用方法

    这篇文章主要介绍了ORACLE DBlink的创建和使用,本文通过实例代码给大家给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • plsql配置tnsnames.ora的实现方法

    plsql配置tnsnames.ora的实现方法

    这篇文章主要介绍了plsql配置tnsnames.ora的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • [Oracle] 常用工具集之SQL*Loader的用法

    [Oracle] 常用工具集之SQL*Loader的用法

    SQL*Loader是Oracle提供的用于数据加载的一种工具,它比较适合业务分析类型数据库(数据仓库),能处理多种格式的平面文件,批量数据装载比传统的数据插入效率更高
    2013-07-07
  • Oracle表空间查看sql使用情况

    Oracle表空间查看sql使用情况

    我们在日常工作中查看表空间的使用情况大多数都是使用DBA。下面脚本之家小编给大家带来了oracle表空间查看sql使用情况的方法步骤,需要的童鞋参考下
    2016-05-05
  • Oracle round()函数与trunc()函数区别介绍

    Oracle round()函数与trunc()函数区别介绍

    本文将详细介绍Oracle round()函数与trunc()函数区别,需要了解的朋友可以参考下
    2012-11-11
  • oracle设置mybatis自动生成id插入方式

    oracle设置mybatis自动生成id插入方式

    这篇文章主要介绍了oracle设置mybatis自动生成id插入方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Oracle学习笔记(六)

    Oracle学习笔记(六)

    最近需要用的oracle,所以大家好好的学习下基础并整理下资料,希望能帮助到需要的朋友。
    2011-12-12
  • Oracle Arraysize设置对于逻辑读的影响实例分析

    Oracle Arraysize设置对于逻辑读的影响实例分析

    这篇文章主要介绍了Oracle Arraysize设置对于逻辑读的影响实例分析,通过设置Arraysize大幅减少了逻辑读的次数和网络往返次数,需要的朋友可以参考下
    2014-07-07
  • Oracle Job时间间隔设置

    Oracle Job时间间隔设置

    本文介绍了创建、运行、删除Job的方法,以及列举了常见的设置时间间隔执行的方法,小伙伴们可以参考一下。
    2016-05-05

最新评论