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

分页 (利用 数据库 存储过程 rownum)

    博客分类:
  • jsp
阅读更多
/***************************************************************************
     * 获取分页的全部信息
     */
    public List getAllI(int UserID, int nPageSize,int nPageNum)
    {
        ArrayList list = new ArrayList();
        String sql = "select ID,to_Char(AddDate,'yyyy-mm-dd') as sDate, rowNum as rn                            from  tData_Inquire " + "where  State = 0 ";           
        sSQL=sql;
        
        sql="select * from ("+sql+") temp where temp.rn>"+(nPageSize*(nPageNum-1))
                            +" and temp.rn<="+(nPageSize*(nPageNum));
        try
        {            
            openDB();
            rs = st.executeQuery(sql);
            while (rs.next())
            {                    
                InquireAttr attr = new InquireAttr();
                attr.setNID(rs.getInt("ID"));              
                。。。。
                list.add(attr);
            }
        }
        catch (SQLException e)
        {
            。。。。
        }
        finally
        {
            closeDB();
        }
        return list;
    }
    

 /******************************
     * 分页 得到数据个数
     */
    public int getPageInfo(){
        sql="select count(*) from ("+sSQL+")";
        int nRecordCount = bean.changeInt(getOneValue(sql));

        return nRecordCount;
    }

                        
 <%
                         int nRecordCount = inquireBean.getPageInfo();
                         int nPageCount = (nRecordCount+nPageSize-1)/nPageSize;
  %>
                              共 <%=nRecordCount%> 条记录   
<%                            if(nRecordCount>0){ %>
                             <%=nPageNum%>/<%=nPageCount%>
                            <a href="Inquire.jsp?pageNum=1">首页</a>
<%                            if(nPageNum>1){%>
                            <a href="Inquire.jsp?pageNum=<%=nPageNum-1%>">上一页</a>
<%    
                            } 
%>
<%                            if(nPageNum<nPageCount){%>
                            <a href="Inquire.jsp?pageNum=<%=nPageNum+1%>">下一页</a>
<%    
                            }
 %>
分享到:
评论

相关推荐

    javaweb_分页显示数据库内容

    Java Web 分页显示数据库内容 Java Web 分页显示数据库内容是指在 Java Web 应用程序中实现在数据库内容的分页显示。分页是指将大量的数据或记录分割成多个页面,以便于用户逐页浏览和查看。分页在数据库查询和显示...

    高效分页存储过程 高效分页存储过程

    为了解决这个问题,我们可以设计一个高效的分页存储过程,它利用了SQL Server的`WITH (INDEX)`子句和`TOP`关键字。下面是一个简单的示例: ```sql CREATE PROCEDURE [dbo].[usp_GetPagedData] @TableName NVARCHAR...

    oracle 数据库 plsql 存储过程

    ### Oracle数据库PL/SQL存储过程详解 #### 一、存储过程概述 **Oracle存储过程**是一种可以在Oracle数据库中存储并可被多次调用的PL/SQL代码块。它由一系列的PL/SQL语句组成,可以包含控制流程、变量声明等,能够...

    利用存储过程分页,使用oracle数据库

    "利用存储过程分页"的实现方式是通过调用存储过程来处理分页逻辑,以提高效率和优化用户体验。 首先,我们来看存储过程。存储过程由一系列的SQL语句和PL/SQL块组成,它们可以接受输入参数,返回结果,并执行复杂的...

    Oracle 存储过程分页

    例如,以下存储过程展示了基于ROWNUM的分页查询: ```sql CREATE OR REPLACE PROCEDURE get_paged_data (start_row IN NUMBER, page_size IN NUMBER, cursor OUT SYS_REFCURSOR) IS BEGIN OPEN cursor FOR ...

    Oracle 分页存储过程

    这里我们将深入探讨如何利用Oracle的存储过程来实现高效多条件的分页查询。 首先,理解分页的基本原理。分页通常涉及两个关键参数:当前页数(`PAGENUM`)和每页记录数(`RECORDSPERPAGE`)。通过这两个参数,我们...

    Oracle数据库通用的分页存储过程

    Oracle数据库中实现分页查询主要有两种方法:ROWNUM和ROW_NUMBER()函数,这里我们主要讨论通过存储过程实现的通用分页方法。 一、ROWNUM方法 ROWNUM是Oracle数据库中的一个伪列,它会为每一行分配一个唯一的整数,...

    SqlServer 分页存储过程以及代码调用

    本文将详细介绍如何使用存储过程实现SQL Server的分页,并演示如何在代码中调用这些存储过程。 一、分页的基本原理 分页通常涉及到两个关键参数:每页大小(PageSize)和当前页码(CurrentPage)。通过这两个参数...

    delphi分页查询 利用sql2000存储过程分页

    在SQL Server 2000中,由于不支持直接的OFFSET/FETCH或LIMIT/OFFSET分页语法,我们需要利用存储过程来实现。下面是一个基本的存储过程模板,用于执行分页查询: ```sql CREATE PROCEDURE [dbo].[usp_GetPagedData] ...

    Oracle 分页存储过程 终极版

    总的来说,"Oracle分页存储过程 终极版"是一个针对大数据量查询优化的解决方案,它通过高效的分页策略和存储过程封装,实现了快速、可控的分页查询,提升了用户体验并减轻了数据库的负载。在实际开发中,这样的工具...

    最新的SQl高效分页存储过程

    在相同数据情况下,新的分页存储过程执行性能显著优于原有的方法,因为它减少了数据库的I/O操作和计算量。通过实际测试,可以验证新旧方法在执行时间和资源消耗上的差异。 4. **结论** 采用新的分页存储过程能...

    Oracle All 添加 修改 更新 Oracle分页 emp表 存储过程实现

    在Oracle中,我们可以利用ROWNUM伪列配合子查询来实现分页。 以下是一个简单的分页查询存储过程的实现步骤: 1. **创建存储过程**: 在Oracle中,创建存储过程的语法如下: ```sql CREATE OR REPLACE PROCEDURE...

    C#调用分页存储过程实例

    总结来说,C#调用分页存储过程是通过建立数据库连接、创建命令对象、添加参数、执行存储过程并处理结果来实现的。在SQL Server中,利用`ROW_NUMBER()`函数可以有效地执行分页查询。理解并熟练掌握这些技巧,将有助于...

    Oracle分页及存储过程的实现和调用

    本篇文章将深入探讨Oracle中的分页技术以及如何通过存储过程来实现和调用这些功能。 首先,Oracle分页主要有以下几种方法: 1. **ROWNUM**:这是Oracle中最基础的分页方式,通过在查询语句中结合ROWNUM伪列来限制...

    oracle分页查询并返回总记录数据存储过程

    Oracle 数据库提供了多种方法来实现分页查询,其中使用存储过程是一种高效且灵活的方式。本文将详细介绍如何在 Oracle 中创建一个用于分页查询并返回总记录数的存储过程。 #### 核心概念 1. **存储过程**:存储在...

    oracle分页存储过程

    总结,Oracle分页存储过程是数据库管理中常见的功能,它结合了分页查询和存储过程的优势,提供了高效、灵活的数据检索方式。通过理解其工作原理和编写方法,我们可以更好地利用这一工具来优化数据库应用。

    3个高效率sql分页存储过程

    本文将详细介绍三个高效且参数最少的SQL分页存储过程,帮助你优化数据库性能,提升查询速度。 1. **基于ROW_NUMBER()函数的分页存储过程** ROW_NUMBER()是SQL Server中的一个窗口函数,它为每一行提供一个唯一的...

    如何创建分页的存储过程

    ### 如何创建分页的存储过程 在数据库应用开发中,分页是非常常见的需求之一,尤其是在数据量较大的情况下,为了提高用户体验以及减轻服务器压力,合理的分页策略是必不可少的。本文将详细介绍如何创建一个用于分页...

    Oracle分页存储过程

    通过上述分析和示例,我们可以看到,利用Oracle存储过程进行分页查询不仅可以提高查询效率,还能增强代码的可读性和可维护性。在实际项目中,结合C#等高级语言的应用,可以进一步提升系统的性能和用户体验。

Global site tag (gtag.js) - Google Analytics