数据库分页存储过程

时间:2022-04-20 14:08:05
数据库分页存储过程


数据库分页存储过程SET  QUOTED_IDENTIFIER  ON  
数据库分页存储过程
GO
数据库分页存储过程
SET  ANSI_NULLS  ON  
数据库分页存储过程
GO
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程数据库分页存储过程
/*
数据库分页存储过程名    称: pr_Common_PagedSelect
数据库分页存储过程功    能: 获取指定页的数据
数据库分页存储过程
数据库分页存储过程创建标识:2008-05-12 15:30
数据库分页存储过程修改标识:
数据库分页存储过程修改原因:
数据库分页存储过程
*/

数据库分页存储过程CREATE    
PROCEDURE   [ dbo ] .pr_Common_PagedSelect
数据库分页存储过程    
@TableName        varchar ( 255 ),    --  表名
数据库分页存储过程
     @OrderField        varchar ( 255 ),    --  排序字段名
数据库分页存储过程
     @SelectedFields    varchar ( 255 ),    --  选择字段名
数据库分页存储过程
     @PageSize       int ,             --  页尺寸
数据库分页存储过程
     @PageIndex      int ,             --  页码
数据库分页存储过程
     @OrderType      bit ,             --  设置排序类型, 非 0 值则降序
数据库分页存储过程
     @Condition       varchar ( 2000 )   --  查询条件 (注意: 不要加 where)
数据库分页存储过程
AS
数据库分页存储过程    
declare   @strSQL        varchar ( 6000 )        --  主语句
数据库分页存储过程
     declare   @strTmp        varchar ( 1000 )        --  临时变量
数据库分页存储过程
     declare   @strOrder      varchar ( 500 )         --  排序类型
数据库分页存储过程

数据库分页存储过程
数据库分页存储过程    
if   @OrderType   !=   0
数据库分页存储过程        
begin
数据库分页存储过程            
set   @strTmp   =   ' <(select min '
数据库分页存储过程            
set   @strOrder   =   '  order by [ '   +   @OrderField   +   ' ] desc '
数据库分页存储过程        
end
数据库分页存储过程    
else
数据库分页存储过程        
begin
数据库分页存储过程            
set   @strTmp   =   ' >(select max '
数据库分页存储过程            
set   @strOrder   =   '  order by [ '   +   @OrderField   + ' ] asc '
数据库分页存储过程        
end
数据库分页存储过程
数据库分页存储过程    
set   @strSQL   =   ' select top  '   +   str ( @PageSize +   '   '   +   @SelectedFields   +   '  from [ '
数据库分页存储过程        
+   @TableName   +   ' ] where [ '   +   @OrderField   +   ' ] '   +   @strTmp   +   ' ([ '
数据库分页存储过程        
+   @OrderField   +   ' ]) from (select top  '   +   str (( @PageIndex - 1 ) * @PageSize +   '  [ '
数据库分页存储过程        
+   @OrderField   +   ' ] from [ '   +   @TableName   +   ' ] '   +   @strOrder   +   ' ) as tblTmp) '
数据库分页存储过程        
+   @strOrder
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程    
if   @Condition   !=   ''
数据库分页存储过程        
Begin
数据库分页存储过程        
set   @strSQL   =   ' select top  '   +   str ( @PageSize +   '   '   +   @SelectedFields   +   '  from [ '
数据库分页存储过程            
+   @TableName   +   ' ] where [ '   +   @OrderField   +   ' ] '   +   @strTmp   +   ' ([ '
数据库分页存储过程            
+   @OrderField   +   ' ]) from (select top  '   +   str (( @PageIndex - 1 ) * @PageSize +   '  [ '
数据库分页存储过程            
+   @OrderField   +   ' ] from [ '   +   @TableName   +   ' ] where  '   +   @Condition   +   '   '
数据库分页存储过程            
+   @strOrder   +   ' ) as tblTmp) and  '   +   @Condition   +   '   '   +   @strOrder
数据库分页存储过程        
End
数据库分页存储过程    
if   @PageIndex   =   1
数据库分页存储过程        
begin
数据库分页存储过程            
set   @strTmp   =   ''
数据库分页存储过程            
if   @Condition   !=   ''
数据库分页存储过程                
set   @strTmp   =   '  where ( '   +   @Condition   +   ' ) '
数据库分页存储过程    
数据库分页存储过程            
set   @strSQL   =   ' select top  '   +   str ( @PageSize +   '   '   +   @SelectedFields   +   '  from [ '
数据库分页存储过程                
+   @TableName   +   ' ] '   +   @strTmp   +   '   '   +   @strOrder
数据库分页存储过程        
end
数据库分页存储过程
数据库分页存储过程
exec  ( @strSQL )       -- 获取记录集
数据库分页存储过程

数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
数据库分页存储过程
GO
数据库分页存储过程
SET  QUOTED_IDENTIFIER  OFF  
数据库分页存储过程
GO
数据库分页存储过程
SET  ANSI_NULLS  ON  
数据库分页存储过程
GO
数据库分页存储过程
数据库分页存储过程