`
kfcman
  • 浏览: 387075 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

oracle分页代码(超简单写法)

阅读更多
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>   
<html>
<head>
<title>oracle 的简单fy</title>
</head>
<body>
<center>
<h1><center>oracle 的fy</center></h1><hr>
    <%
    //下面是连接数据库的一些基本信息,不用多说。
      String driver="oracle.jdbc.driver.OracleDriver";
      String url="jdbc:oracle:thin:@localhost:1521:orcl";
      String uname="scott";
      String password="tiger";
      Connection conn=null;
    %>
    <!-- 这里要注意table的写法,很简单的 -->
    <table>
    <tr><td>用户名</td><td>薪水</td></tr>
    <%  
          //这里主要是实现自己想拿到第几页(当前页)。pageNow是当前页
                 String r_pageNow=(String)request.getParameter("pageNow");
                 int pageNo=0;
                 if(r_pageNow!=null){
                 pageNo=Integer.parseInt(r_pageNow);
                 }
    
      try{
        Class.forName(driver);
        conn=DriverManager.getConnection(url, uname,password);
 
        //一共有多少页
        int pageCount=0;
        int rowCount=0; //一共有多少行
        int pageSize=3; //每页显示多少条记录
       
       String sq="select count(*) from emp";
       PreparedStatement prt=conn.prepareStatement(sq);
       ResultSet rst=prt.executeQuery();
       while(rst.next()){
       //这一句主要是得到一共有多少行记录
       rowCount=rst.getInt(1);
       //下面的if与else语句是一共有多少页的判断方法。
       if(rowCount%pageSize==0){
              pageCount=rowCount/pageSize;
       }else{
              pageCount=rowCount/pageSize+1;
       }

       }
        //这里主要是查询分页sql语句
        String sql="select * from(select a1.*,rownum rn from(select * from emp) a1 where rownum<="+pageNo*pageSize+") a2 where a2.rn>="+((pageNo-1)*pageSize+1)+"";
         PreparedStatement   ptmt=conn.prepareStatement(sql);
         ResultSet rs=ptmt.executeQuery();
        while(rs.next()){
       %>
           <tr>
           <td>
           <%
       out.println(rs.getString(2));
        
         %>
         </td>
           <td>
           <%
       out.println(rs.getString(6));
        
         %>
         </td>
        
         </tr>
         <%
         }
         //pageCount 是一共有多少页。for的目的是通过代码把页数分开。
                for(int i=1;i<pageCount;i++){
         out.print("<a href=testoracle.jsp?pageNow="+i+">【"+i+"】</a>");
         }
      %>
      </table>
      <%
       conn.close();
      }catch(Exception e){
       e.printStackTrace();
      }
     %>
</center>
</body>
</html>

分享到:
评论

相关推荐

    Oracle的SQL分页实践

    Oracle的SQL分页实践

    Oracle分页查询的实例详解

    Oracle分页查询的实例详解 1.Oracle分页查询: SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM tab) A WHERE ROWNUM &lt;= 40 ) WHERE RN &gt;= 21; 这个分页比下面的执行时间少,效率高。  2. ...

    Oracle实现分页查询的SQL语法汇总

    本文实例汇总了Oracle实现分页查询的SQL语法,整理给大家供大家参考之用,详情如下: 1.无ORDER BY排序的写法。(效率最高) 经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响...

    oracle面试题

    掌握Oracle中rowid,rownum的使用,掌握ORACLE分页语句的写法,掌握ORACLE存储过程的创建和使用,

    java(jsp) 分页

    分页 主要有多种写法 支持各种数据库的 例如mysql,sql2000,oracle,hibernate 等分页

    DB2、ORACLE SQL写法的主要区别

    DB2、ORACLE SQL写法的主要区别 1、数据类型转换函数 2、Where条件弱类型判断 3、replace关键字 4、子查询别名 5、DATE数据类型的区别 6、分页的处理 7、decode函数 8、NVL函数 9、substr的不同 10、获取操作系统...

    oracle存储过程返回游标数据集

    存储过程中通过返回数据集,通过游标方式实现,以及在java中如何接收的整个过程

    oracle 使用rownum的三种分页方式

    三种分页的写法: 1.使用minus,原理就是查询出前100行的数据 减去 查询出前50行的数据 select * from DATA_TABLE_SQL where rownum&lt;=100 minus select * from DATAT_ABLE_SQL where rownum&lt;=50 2.查询出所有...

    Oracle数据库、SQL

    1.14几个简单命令 2 1.15 tarena给jsd1304授权 2 1.16课程中使用的5个表 3 二、 select from语句 5 2.1 select语句功能 5 2.2 select语句基本语法 5 2.3列别名 5 2.4算术表达式 5 2.5空值null的处理 5 2.6 nvl(p1,p2...

    仿orm自动生成分页SQL分享

    先看看目前这4种数据库的分页写法: 代码如下:— OracleSELECT * FROM ( SELECT ROWNUM RN, PageTab.* FROM ( SELECT * FROM User_Tables order by id desc ) PageTab where ROWNUM &lt;= 3010 ) Where RN&gt;= 3001...

    Oracle事例

    14、查询从多少行到多少行的记录(可以用在web开发中的分页显示) select * from ( select rownum row_id,b.* from (select a.* from sys_oper a) b ) where row_id between 15 and 20 15、对公共授予访问权 ...

    PhP框架DoitPHP v1.5 MySql版.zip

    二、简明高效的视图运行机制,使视图文件的开发操作变得简单易行。 三、灵活的扩展模块(module)设计,能够非常容易地调用如:SMARTY、ADODB、CKEDITOR、TINYEDITOR、FPDF、PHPMAILER、PHPRPC等第三方开源程序。 四...

    1000道互联网Java架构师面试题

    * 简单易用:MyBatis 提供了一个简单的方式来访问数据库,无需编写大量的 JDBC 代码。 * 高性能:MyBatis 使用缓存机制来提高性能,减少数据库查询次数。 * 灵活性强:MyBatis 支持动态 SQL,可以根据需要生成不同的...

    asp.net知识库

    发布Oracle存储过程包c#代码生成工具(CodeRobot) New Folder XCodeFactory3.0完全攻略--序 XCodeFactory3.0完全攻略--基本思想 XCodeFactory3.0完全攻略--简单示例 XCodeFactory3.0完全攻略--IDBAccesser ...

    SQL培训第一期

    union 会对查询数据进行去重并排序,union all只是简单的将两个结果合并。 1.8.8 wm_concat 1.8.8.1 语法 select wm_concat(t.role_name) from g_role t where t.role_name like '%书记%' 1.8.8.2 说明 拼接字符串,...

    2009达内SQL学习笔记

    函数可能会带来系统的不可移植性(可移植性:所编写的代码可以在多个系统上运行)。 加入注释是一个使用函数的好习惯。 大多数SQL实现支持以下类型的函数: 文本处理, 算术运算, 日期和时间, 数值处理。 Null:...

    收获不止SQL优化

    12.1.2 Rownum分页改写 337 12.1.3 Hint直接路径改造 338 12.1.4 只取你所需的列 339 12.1.5 避免或者减少递归调用 341 12.1.6 ROWID优化应用 347 12.2 设法避免外因影响 350 12.2.1 Hint改写确保执行计划...

    精髓Oralcle讲课笔记

    -- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...

    Java学习笔记-个人整理的

    {1.11}简单算法}{38}{section.1.11} {1.11.1}打乱算法}{38}{subsection.1.11.1} {1.11.2}排序算法}{38}{subsection.1.11.2} {1.11.2.1}选择排序}{38}{subsubsection.1.11.2.1} {1.11.2.2}冒泡排序}{39}{...

Global site tag (gtag.js) - Google Analytics