Page=1;
ELSE IF @intCurrentPage>@intTotoPages
set @intCurPage = @intTotoPages;
ELSE
set @intCurPage=@intCurrentPage;
If @strWhere <> ''
Set @strSQL = 'SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY ' + @strOrderFld + ') ROWNUM,' + @strFieldList + ' FROM ' + @strTableList + ' ' + @strWhere +
') TAB_TMP WHERE ROWNUM>' + cast((@intCurPage-1)*@intPageSize as varchar) + ' and ROWNUM < ' + cast(@intCurPage*@intPageSize+1 as varchar);
Else
Set @strSQL = 'SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY ' + @strOrderFld + ') ROWNUM,' + @strFieldList + ' FROM ' + @strTableList +
') TAB_TMP WHERE ROWNUM>' + cast((@intCurPage-1)*@intPageSize as varchar) + ' and ROWNUM < ' + cast(@intCurPage*@intPageSize+1 as varchar) ;
Execute(@strSQL);
www.2cto.com
If @@error<>0
return @@error;
Else
return 0;
errPageSize:
return -1;
errTotoRecords:
return -2;
END
作者 牟珏