sql 分页存储过程
2012-04-20 23:58
363 查看
USE EplusSystem --DROP PROC Page
GO
CREATE PROCEDURE Page --分页存储过程
@TableName VARCHAR(100),--表名
@PageSize INT,--页大小
@PageIndex INT,--页号
@StrWhere VARCHAR(100),--条件
@OrderField VARCHAR(100)--排列
AS
DECLARE @IdCount INT
DECLARE @Where VARCHAR(100)
DECLARE @Order VARCHAR(100)
SET @IdCount=@PageSize*@PageIndex
IF(@StrWhere!='')
SET @Where=' AND '+@StrWhere
ELSE
SET @Where=''
IF(@OrderField!='')
SET @Order=' ORDER BY '+@OrderField
ELSE
SET @Order=''
EXEC ('SELECT TOP '+ @PageSize +' * FROM '+@TableName+' WHERE Id NOT IN (SELECT TOP '+@IdCount+' Id FROM '+@TableName+' ORDER BY Id ASC) '+@Where+@Order)
存储过程中要注意空格号!!!!
GO
CREATE PROCEDURE Page --分页存储过程
@TableName VARCHAR(100),--表名
@PageSize INT,--页大小
@PageIndex INT,--页号
@StrWhere VARCHAR(100),--条件
@OrderField VARCHAR(100)--排列
AS
DECLARE @IdCount INT
DECLARE @Where VARCHAR(100)
DECLARE @Order VARCHAR(100)
SET @IdCount=@PageSize*@PageIndex
IF(@StrWhere!='')
SET @Where=' AND '+@StrWhere
ELSE
SET @Where=''
IF(@OrderField!='')
SET @Order=' ORDER BY '+@OrderField
ELSE
SET @Order=''
EXEC ('SELECT TOP '+ @PageSize +' * FROM '+@TableName+' WHERE Id NOT IN (SELECT TOP '+@IdCount+' Id FROM '+@TableName+' ORDER BY Id ASC) '+@Where+@Order)
存储过程中要注意空格号!!!!
相关文章推荐
- SQL 简单的存储过程分页 改写方法
- asp.net SQL存储过程分页
- 一个sql分页的存储过程
- 通用SQL存储过程分页以及asp.net后台调用
- [转]关于SQL分页存储过程的分析
- 针对sql 2005优化的高性能分页存储过程
- MS SQLSERVER通用存储过程分页
- SQL 2005 分页存储过程
- sql 分页取数据的存储过程
- asp.net SQL存储过程分页
- SQL 分页存储过程
- 针对sql 2005优化的高性能分页存储过程
- [转]SQL存储过程分页完美版
- SQL存储过程分页(通用的拼接SQL语句思路实现)
- SQL----分页存储过程
- SQL分页常用的两个存储过程
- Sql Server - SQL分页存储过程自动生成
- SQL之通用查询分页存储过程
- sql 存储过程分页代码 支持亿万庞大数据量
- 通用sql分页存储过程