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

最新分页存储过程

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

分享到:
评论

相关推荐

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

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

    分页存储过程 分页存储过程 分页存储过程

    分页存储过程 分页存储过程 分页存储过程 sql代码

    sql Server 通用分页存储过程

    sql Server 通用分页存储过程 sql Server 通用分页存储过程 sql Server 通用分页存储过程 sql Server 通用分页存储过程

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

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

    oracle分页存储过程

    oracle分页存储过程,oracle分页存储过程

    万能分页存储过程

    ### 万能分页存储过程知识点详解 #### 一、概述 在数据库操作中,分页查询是一项常用且重要的技术,特别是在数据量较大的场景下,能够显著提高用户体验和系统性能。本文将详细介绍一个名为“万能分页存储过程”的...

    MYSQL分页存储过程

    本文将深入解析MySQL中的分页存储过程,通过实例代码讲解其工作原理与实现步骤。 ### MySQL分页存储过程概述 分页存储过程是一种在数据库层面上实现数据分页的技术。相比应用程序级别的分页,它能更高效地处理数据...

    分页存储过程示例系统

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

    c#调用分页存储过程

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

    Oracle 分页存储过程 终极版

    "Oracle分页存储过程 终极版"旨在提供一个高效、灵活的解决方案,以应对各种分页查询的需求。这个存储过程优化了性能,并支持各种条件筛选和排序,使得在海量数据中进行分页操作变得更为便捷。 首先,理解分页的...

    效率高的分页存储过程实现的分页

    本文将深入探讨如何通过使用存储过程来实现高效的分页存储过程,特别是针对ASP.NET应用程序。 标题 "效率高的分页存储过程实现的分页" 提到的是一种优化数据检索的技术。在ASP.NET开发中,GridView控件是常用的数据...

    通用分页存储过程

    ### 通用分页存储过程知识点解析 #### 一、存储过程概述 在数据库管理系统中,存储过程是一种预先编译并存储在数据库中的SQL程序。它能够接收参数,并根据这些参数执行复杂的逻辑操作,如数据查询、更新等。通过...

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

    本文将深入探讨如何使用C#语言调用SQL Server的分页存储过程,帮助开发者更高效地处理大量数据。 首先,理解分页查询的概念。分页查询是一种在大数据集上进行有效检索的方法,它允许用户按需加载一定数量的数据,而...

    sqlserver 分页存储过程

    SQL Server 分页存储过程是一种在数据库中实现高效数据分页查询的方法。在大型数据集的展示中,分页是必不可少的,因为它允许用户逐步浏览数据,而不是一次性加载所有记录,从而提高用户体验并减少服务器负载。以下...

    Oracle分页存储过程

    oracle分页存储过程详细的编码 可直接使用 拿去使用吧

    分页存储过程 存储过程分页

    分页存储过程 分页存储过程分页存储过程分页存储过程

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

    二、SQL Server的分页存储过程 在SQL Server中,可以使用`OFFSET`和`FETCH NEXT`语句实现分页。下面是一个简单的分页存储过程示例: ```sql CREATE PROCEDURE [dbo].[usp_GetPagedData] @TableName NVARCHAR(128)...

Global site tag (gtag.js) - Google Analytics