码迷,mamicode.com
首页 > 数据库 > 详细

SQL Server 2008 分页存储过程

时间:2014-08-13 14:36:16      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   ar   2014   art   cti   div   

在用的,已经不知道出处了,如果有侵权请告诉我,我立刻删掉。

USE [ActivaOnlineSupport]
GO
/****** Object:  StoredProcedure [dbo].[PROCE_PAGECHANGE]    Script Date: 08/13/2014 13:45:17 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[PROCE_PAGECHANGE]
(
 @TableName varchar(50),            --表名
 @ReFieldsStr varchar(200) = *,   --字段名(全部字段为*)
 @OrderString varchar(200),         --排序字段(必须!支持多字段不用加order by)
 @WhereString varchar(500) =N‘‘,  --条件语句(不用加where)
 @PageSize int,                     --每页多少条记录
 @PageIndex int = 1 ,               --指定当前为第几页
 @TotalRecord int output            --返回总记录数
)
AS
  
BEGIN    
 
    --处理开始点和结束点
    Declare @StartRecord int;
    Declare @EndRecord int; 
    Declare @TotalCountSql nvarchar(500); 
    Declare @SqlString nvarchar(2000);    
    set @StartRecord = (@PageIndex-1)*@PageSize + 1
    set @EndRecord = @StartRecord + @PageSize - 1 
    SET @TotalCountSql= Nselect @TotalRecord = count(*) from  + @TableName;--总记录数语句
    SET @SqlString = N(select row_number() over (order by + @OrderString +) as rowId,+@ReFieldsStr+ from + @TableName;--查询语句
    --
    IF (@WhereString! = ‘‘ or @WhereString!=null)
        BEGIN
            SET @TotalCountSql=@TotalCountSql +   where + @WhereString;
            SET @SqlString =@SqlString+   where + @WhereString;            
        END
    --第一次执行得到
    --IF(@TotalRecord is null)
    --   BEGIN
           EXEC sp_executesql @totalCountSql,N@TotalRecord int out,@TotalRecord output;--返回总记录数
    --  END
    ----执行主语句
    set @SqlString =select * from  + @SqlString + ) as t where rowId between  + ltrim(str(@StartRecord)) +  and  +  ltrim(str(@EndRecord));
    Exec(@SqlString)    
END

 

SQL Server 2008 分页存储过程,布布扣,bubuko.com

SQL Server 2008 分页存储过程

标签:style   blog   color   ar   2014   art   cti   div   

原文地址:http://www.cnblogs.com/uncleJOKER/p/3909991.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!