alter procedure proGetAll
(
@sort varchar(10), //升序还是降序
@fromTable varchar (20), //哪一个表
@pageIndex int, //第几行
@pageSize int, //每页显示多数行
@pageBy varchar (20) //根据哪一字段排序
)
as
begin
declare @sql nvarchar(max);
set @Sql='select * from (select (row_number() over('+@sort+' by '+@pageBy+')-1)/'+convert(varchar(20),@pageSize)+' as rowId, * from '+@fromTable+') a where rowId='+convert (varchar(20),@pageIndex)+'';
print @Sql;
exec sp_executesql @sql;
end