`

数据库分页存储过程

Go 
阅读更多
/*
数据库分页存储过程,支持倒序和升序
参数说明:
  @tablename:为搜索表名
  @tablefield:为表的字段,约定为表的主键,
  @where:为搜索表名,要显示所有记录请设为"1=1"
  @orderby:为搜索结果排序,如order by id desc
  @fieldlist:为字段列表,如userid, username
  @curpage:当前页码
  @page_record:每页记录条数
  @Sort:排序标识(如果是倒序排,参数值为desc,为升序,参数值为asc,跟orderby参数是对应的)
结果: 返回表tablename中满足条件where的第curpage页的page_record条记录,结果按orderby排序
*/
CREATE PROCEDURE proc_CommonPaging

@tablename varchar(100),
@tablefield varchar(20),
@where varchar(5000),
@orderby varchar(500),
@fieldlist varchar(1000),
@curpage int,
@page_record int,
@sort varchar(8)

AS

BEGIN

  
DECLARE @cmd varchar(8000)
  
DECLARE @uprecord int
  
DECLARE @Op varchar(2-- 操作符
  DECLARE @max_min varchar(4-- 最大/最小计算

  
SET @op = '<'
  
SET @max_min = 'MIN'
  
IF @sort = 'asc'
      
BEGIN
    
SET @Op = '>'
            
SET @max_min = 'MAX'
      
END

  
SET @uprecord=@curpage * @page_record
  
  
IF @curpage = 0
      
SET @cmd = 'SELECT TOP '+cast(@page_record AS NVARCHAR)+' '+@fieldlist+' FROM '+@tablename+' WHERE '+@where+' '+@orderby
  
ELSE
    
SET @cmd = 'SELECT TOP '+cast(@page_record AS NVARCHAR)+' '+@fieldlist+' FROM '+@tablename+' WHERE '+@where+' AND '+@tablefield+' 
    
'+@op+' (SELECT '+@max_min+'('+@tablefield+')  FROM (SELECT TOP  '+cast(@uprecord AS NVARCHAR)+' '+@tablefield+' FROM '+@tablename+' WHERE 
    
'+@where+' '+@orderby+') AS TmpTbl ) AND '+@where+' '+@orderby

  
SET @cmd = @cmd + '; SELECT COUNT(*) FROM '+@tablename+' WHERE '+@where

  
EXEC(@cmd)
  
PRINT(@cmd)

END
GO
 
分享到:
评论

相关推荐

    数据库分页用存储过程实现的

    数据库分页 用存储过程实现的 数据库分页 用存储过程实现的 数据库分页 用存储过程实现的 数据库分页 用存储过程实现的

    应用于所有的网页开发数据库分页存储过程

    在网页开发中,数据库分页是...总结来说,这个压缩包文件提供了一个通用的数据库分页存储过程示例,适用于各种网页开发项目。通过ASP调用存储过程,可以轻松实现高效且灵活的分页功能,提升用户界面的性能和响应速度。

    数据库分页存储过程示例

    接下来,我们来看一个简单的分页存储过程的创建和使用过程: 1. **创建存储过程**: 在MySQL中,一个简单的分页存储过程可能如下所示: ```sql DELIMITER // CREATE PROCEDURE GetPagedData(IN page INT, IN ...

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

    高效分页存储过程的实现对于优化数据库性能至关重要。本文将深入探讨如何创建和使用高效的分页存储过程,并针对SQL Server 2005及2010提供一个实用的例子。 首先,理解分页的基本概念。分页通常涉及到两个关键参数...

    数据库分页存储过程代码

    数据库分页存储过程代码 数据库分页存储过程代码是一个数据库存储过程,用于实现数据库表的分页查询。该存储过程支持倒序和升序排序,能够根据指定条件查询指定表的记录,并返回当前页码的记录。 存储过程参数: ...

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

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

    Qt编写的数据库分页demo

    **Qt编写的数据库分页demo**是一个用于展示如何在Qt应用程序中实现高效、用户友好的数据库数据分页功能的示例项目。这个demo的核心在于它能够处理大量的数据,如千万级记录,同时提供流畅的用户体验,包括上一页、...

    数据库分页数据库分页数据库分页数据库分页

    ### 数据库分页技术详解 #### 一、引言 在大数据时代,高效的数据管理和查询技术变得尤为重要。其中,数据库分页技术作为一种提高用户体验、优化数据检索效率的重要手段,在各类应用系统尤其是Web应用中得到了广泛...

    asp+数据库分页显示

    此外,为了提高性能,可以考虑使用存储过程,预编译的SQL语句或参数化查询。最后,确保在处理大量数据时,对索引进行适当的设计,以加快排序和查询速度。 综上所述,ASP结合SQL Server实现数据库分页显示涉及到SQL...

    数据库分页大全及示例

    2. **使用存储过程**:在数据库中创建存储过程,接收页码和每页大小作为输入参数,返回分页后的数据。 3. **ORM框架支持**:如Hibernate、MyBatis等,它们通常内置了对分页的支持,可以通过配置或API直接实现分页...

    易语言测试源码,易语言数据库分页显示

    在这个"易语言测试源码,易语言数据库分页显示"的压缩包中,我们关注的是如何在易语言中实现数据库数据的分页显示功能。 数据库分页显示是常见的数据处理技术,尤其在网页或应用程序中,当数据量较大时,为了提高...

    sql的存储过程-简单分页

    很好的通过存储过程实现分页的技术,很好的通过存储过程实现分页的技术,很好的通过存储过程实现分页的技术

    分页存储过程示例系统

    在IT领域,分页存储过程是数据库管理中的一个重要概念,特别是在构建大规模的Web应用程序时,如新闻系统。分页能够有效地提高用户体验,因为用户可以逐步加载数据,而不是一次性加载所有内容,这降低了服务器的负担...

    数据库的存储过程

    数据库的存储过程是数据库管理系统提供的一种预编译的SQL语句集合,它是数据库中的一个对象,可以被多次调用,从而提高数据访问的效率。在本文中,我们将深入探讨存储过程的基本理念、语法以及常见的实现方式,特别...

    万能分页存储过程

    本主题聚焦于“万能分页存储过程”,这是一个专为解决此类问题而设计的数据库存储过程。 分页存储过程通常是在数据库服务器端执行的,它根据特定的参数(如每页大小、当前页码)来获取数据,从而实现分页功能。万能...

    mysql数据库实现分页

    4. **存储过程**:可以创建存储过程来封装分页逻辑,减少重复代码,提高效率。 四、分页策略 1. **静态分页**:固定每页的记录数,适合数据量变化不大且不需要实时更新的场景。 2. **动态分页**:根据用户需求动态...

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

    本篇文章将深入探讨MySQL中的分页存储过程及其代码调用方法。 首先,理解分页的基本概念。在网页或应用程序中,我们通常会看到“上一页”、“下一页”这样的导航,这就是分页的表现形式。分页查询通过设置每页显示...

    c#调用分页存储过程

    "C#调用分页存储过程"是一个常见的技术实践,它结合了C#编程语言和SQL Server的存储过程来高效地获取数据库中的分页数据。这种方法可以有效地减少网络传输的数据量,提高用户界面的响应速度,尤其是在数据量达到百万...

Global site tag (gtag.js) - Google Analytics