一CREATE PROCEDURE dbo.PrGetOrderListByPage
@TableName nvarchar(30),
@PageIndex int,
@PageSize int,
AS
DECLARE @SQL VARCHAR(8000)
SET @SQL='SELECT TOP ('+LTRIM(@PageSize)+') * FROM '+ @TableName + ' WHERE FSysId >
(SELECT MAX (FSysId) FROM (SELECT TOP (('+LTRIM(@PageIndex)+'-1)*'+LTRIM(@PageSize)+') FSysId
From '+ @TableName + ' ORDER BY FSysId) AS T) ORDER BY FSysId'
EXEC(@SQL)
二CREATE PROCEDURE [dbo].[PrGetPagingData]
@TableName AS NVARCHAR(50),
@PageSize AS INT,
@CurPage AS INT,
@TotalRecordCount AS INT OUTPUT
AS
CREATE TABLE #temp
(
[id] INT IDENTITY(1,1) ,
[fid] INT
)
DECLARE @Sql AS NVARCHAR(500)
SET @Sql = 'SELECT [FsysId] FROM [dbo].[' + @TableName + ']'INSERT #temp
EXEC SP_EXECUTESQL @Sql DECLARE @Step AS INT
SET @Step = @PageSize * ( @CurPage - 1 ) + 1SET @Sql = 'SELECT a.* FROM [dbo].[' + @TableName + '] a INNER JOIN #temp b
ON (b.id >= ' + CAST(@Step AS NVARCHAR(10)) + ' AND b.id < ' + CAST(@Step AS NVARCHAR(10))
+ ' + ' + CAST(@PageSize AS NVARCHAR(10)) + ' ) AND a.[FSysId] = b.[fid]'EXEC SP_EXECUTESQL @SqlSELECT @TotalRecordCount = COUNT(*) FROM #tempDROP TABLE #temp可用分 444分 这个数字太不吉利~
@TableName nvarchar(30),
@PageIndex int,
@PageSize int,
AS
DECLARE @SQL VARCHAR(8000)
SET @SQL='SELECT TOP ('+LTRIM(@PageSize)+') * FROM '+ @TableName + ' WHERE FSysId >
(SELECT MAX (FSysId) FROM (SELECT TOP (('+LTRIM(@PageIndex)+'-1)*'+LTRIM(@PageSize)+') FSysId
From '+ @TableName + ' ORDER BY FSysId) AS T) ORDER BY FSysId'
EXEC(@SQL)
二CREATE PROCEDURE [dbo].[PrGetPagingData]
@TableName AS NVARCHAR(50),
@PageSize AS INT,
@CurPage AS INT,
@TotalRecordCount AS INT OUTPUT
AS
CREATE TABLE #temp
(
[id] INT IDENTITY(1,1) ,
[fid] INT
)
DECLARE @Sql AS NVARCHAR(500)
SET @Sql = 'SELECT [FsysId] FROM [dbo].[' + @TableName + ']'INSERT #temp
EXEC SP_EXECUTESQL @Sql DECLARE @Step AS INT
SET @Step = @PageSize * ( @CurPage - 1 ) + 1SET @Sql = 'SELECT a.* FROM [dbo].[' + @TableName + '] a INNER JOIN #temp b
ON (b.id >= ' + CAST(@Step AS NVARCHAR(10)) + ' AND b.id < ' + CAST(@Step AS NVARCHAR(10))
+ ' + ' + CAST(@PageSize AS NVARCHAR(10)) + ' ) AND a.[FSysId] = b.[fid]'EXEC SP_EXECUTESQL @SqlSELECT @TotalRecordCount = COUNT(*) FROM #tempDROP TABLE #temp可用分 444分 这个数字太不吉利~
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货