以前写的一个分页存储过程 嗮一下
来源:互联网 发布:aws centos密码 编辑:程序博客网 时间:2024/05/16 18:35
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[Proc_Paging]
@TableName nvarchar(50),@ReFieldsStr nvarchar(200)='*',@OrderStr nvarchar(200),
@WhereStr nvarchar(500)=N'',@PageSize int,@PageIndex int =0,
@TotalCount int out
AS
BEGIN
SET NOCOUNT ON;
DECLARE @StartNum int;
DECLARE @EndNum int;
DECLARE @SqlStr nvarchar(2000);
DECLARE @TotalCountStr nvarchar(500);
SET @StartNum=@PageIndex*@PageSize+1;
SET @EndNum=@StartNum+@PageSize-1;
SET @TotalCountStr=N'select @TotalCount=count(*) from '+@TableName;
SET @SqlStr=N'(select row_number() over ( order by '+@OrderStr+')as rowId,'+@ReFieldsStr+' from '+@TableName;
IF(@WhereStr !=NULL OR @WhereStr!='')
Begin
SET @TotalCount=@TotalCountStr+' where '+@WhereStr;
SET @SqlStr=@SqlStr+' where '+@WhereStr;
END
EXEC sys.sp_executesql @TotalCountStr,N'@TotalCount int out',@TotalCount OUTPUT
SET @SqlStr='select * from '+@SqlStr+')as temptable where rowId between '+LTRIM(STR(@StartNum))+' and '+LTRIM(STR(@EndNum));
EXEC(@SqlStr)
END
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[Proc_Paging]
@TableName nvarchar(50),@ReFieldsStr nvarchar(200)='*',@OrderStr nvarchar(200),
@WhereStr nvarchar(500)=N'',@PageSize int,@PageIndex int =0,
@TotalCount int out
AS
BEGIN
SET NOCOUNT ON;
DECLARE @StartNum int;
DECLARE @EndNum int;
DECLARE @SqlStr nvarchar(2000);
DECLARE @TotalCountStr nvarchar(500);
SET @StartNum=@PageIndex*@PageSize+1;
SET @EndNum=@StartNum+@PageSize-1;
SET @TotalCountStr=N'select @TotalCount=count(*) from '+@TableName;
SET @SqlStr=N'(select row_number() over ( order by '+@OrderStr+')as rowId,'+@ReFieldsStr+' from '+@TableName;
IF(@WhereStr !=NULL OR @WhereStr!='')
Begin
SET @TotalCount=@TotalCountStr+' where '+@WhereStr;
SET @SqlStr=@SqlStr+' where '+@WhereStr;
END
EXEC sys.sp_executesql @TotalCountStr,N'@TotalCount int out',@TotalCount OUTPUT
SET @SqlStr='select * from '+@SqlStr+')as temptable where rowId between '+LTRIM(STR(@StartNum))+' and '+LTRIM(STR(@EndNum));
EXEC(@SqlStr)
END
- 以前写的一个分页存储过程 嗮一下
- 发一个以前写的sql2000的分页存储过程。。
- 以前自己写的一个分页的存储过程
- Oralce 写一个分页的存储过程
- 自已写的一个分页的存储过程
- 熬夜写的一个分页存储过程,支持跳页
- 以前写的一个计算器,稍微改进了一下
- 写个存储过程,做一下千万数据库的数据分页问题
- 将以前写的SQL2分查找法通用分页存储过程算法 改成.net类实现
- 将以前写的SQL 2分查找法 通用分页存储过程算法 改成.net类实现
- 将以前写的SQL 2分查找法 通用分页存储过程算法 改成.net类实现
- 将以前写的SQL 2分查找法 通用分页存储过程算法 改成.net类实现
- 将以前写的SQL 2分查找法 通用分页存储过程算法 改成.net类实现
- 将以前写的SQL 2分查找法 通用分页存储过程算法 改成.net类实现
- 一个分页的存储过程
- 一个分页的存储过程
- 存储过程写的oracle 分页查询
- 一个分页存储过程
- Java中Socket类详解
- mysql重置root密码
- concepts 阅读总结2——存储
- ReportViewer 2008的部署
- Window 下我的电脑“管理”打不开解决方案
- 以前写的一个分页存储过程 嗮一下
- 编译器使用
- 147很刺激可遇不可求 英国下雪下出杆147
- delphi操作注册表最简单的方法TRegIniFile 对象
- 关于用户掉线问题的原因分析
- 转转带你玩转企业虚拟化
- ViewFlipper的使用
- .NET在后置代码中输入JS提示语句(背景不会变白)
- 设置CEdit为只读