SQLSERVER存储过程分页

  • m2_575810
    了解作者
  • 1.2KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-12 01:12
    上传日期
SQLSERVER存储过程分页数据查询,完整的数据库代码。
SQLSERVER存储过程分页.rar
  • 存储过程分页.txt
    2KB
内容介绍
给你一个用SQL存储过程分页的代码 CREATE proc CP_Pages @pageIndex int, --页数 @pageSize int, --页面显示的数据量 @dbFields varchar(1000) --查询的列名 as declare @strSql varchar(5000) --查询的Sql语句 if @pageIndex = '1' set @strSql='select top'+ ' ' + str(@pageSize) + + ' ' + @dbFields + ' from Company_Data order by CD_ID desc' else begin set @strSql = 'select top'+ ' ' + str(@pageSize) +' '+ @dbFields +' '+'from Company_Data' set @strSql = @strSql + ' ' + 'where CD_ID<(' set @strSql = @strSql + 'select min(CD_ID) from (' set @strSql = @strSql + 'select top '+ str((@pageIndex-1)*@pageSize) + +' CD_ID from Company_Data order by CD_ID desc) as t' +') order by CD_ID desc' end exec(@strSql) GO 可以考虑使用sql的存储过程实现分页 if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_PageView]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[sp_PageView] GO /*--利用SQL未公开的存储过程实现分页 方法简单且效率高,已知的问题就是要多返回一个空的记录集 解决的方法是在前台调用时,用 set recordset=recordset.nextrecordset 的方法跳过第一个记录集 此方法由J9988提供,我只是将它改成了方便调用的存储过程 --邹建 2004.05(引用请保留此信息)--*/ /*--调用示例 declare @PageCount int exec sp_PageView @sql='select * from sysobjects', @PageCurrent=2, @PageCount=@PageCount out SELECT @PageCount --*/ CREATE PROC sp_PageView @sql ntext, --要执行的sql语句 @PageCurrent int=1, --要显示的页码 @PageSize int=10, --每页的大小 @PageCount int OUTPUT --总页数 AS SET NOCOUNT ON DECLARE @p1 int --初始化分页游标 EXEC sp_cursoropen @cursor=@p1 OUTPUT, @stmt=@sql, @scrollopt=1, @ccopt=1, @rowcount=@PageCount OUTPUT --计算总页数 IF ISNULL(@PageSize,0)<1 SET @PageSize=10 SET @PageCount=(@PageCount+@PageSize-1)/@PageSize IF ISNULL(@PageCurrent,0)<1 OR ISNULL(@PageCurrent,0)>@PageCount SET @PageCurrent=1 ELSE SET @PageCurrent=(@PageCurrent-1)*@PageSize+1 --显示指定页的数据 EXEC sp_cursorfetch @p1,16,@PageCurrent,@PageSize --关闭分页游标 EXEC sp_cursorclose @p1 GO
评论
    相关推荐
    • sql server jdbc
      sql server jdbc 支持 Sqlserver 2000 sql server 2005 sql server 2008
    • sqlserver2005
      最大的校园网bt 5qzone里下的,都是介绍sql server2005的相关书籍,好像都是英文的。
    • sqlserver驱动
      sqlserver驱动jar包 sqlserver驱动jar包 sqlserver驱动jar包
    • SQLSERVER
      这个一些SQL的试题!
    • SQLServer
      SQL Server PPT 课件
    • sqlserver配置
      sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置sqlserver配置
    • SQLSERVER
      SQLSERVER的所有JAR包和文档说明
    • SQLServer
      SQLServer
    • SQLserver
      SQLserver
    • sql sqlserver 自动提示
      在安装vs2010 sp1 后sql无法代码自动提示,sql sqlserver自动提示