好吧我有一個表在我的SQL Server數據庫中存儲註釋。我的願望是能夠使用[Back],[Next],頁碼& [Last]按鈕在我的數據列表中查看記錄。我認爲最有效的方法是使用僅在特定範圍內返回特定行數的存儲過程。以下是我想出了幫助!我如何從SQL Server分頁程序中獲取總數行?
@PageIndex INT,
@PageSize INT,
@postid int
AS
SET NOCOUNT ON
begin
WITH tmp AS (
SELECT comments.*, ROW_NUMBER() OVER (ORDER BY dateposted ASC) AS Row
FROM comments
WHERE (comments.postid = @postid))
SELECT tmp.*
FROM tmp
WHERE Row between
(@PageIndex - 1) * @PageSize + 1 and @PageIndex*@PageSize
end
RETURN
現在一切工作正常,我已經能夠實現[下一頁]和[返回]在我的數據列表導航按鈕。現在我需要所有評論的總數(不在當前頁面),以便我可以在我的傳呼機上實現我的頁碼和[Last]按鈕。換句話說,我想返回我的第一個選擇語句中的總行數,即
WITH tmp AS (
SELECT comments.*, ROW_NUMBER() OVER (ORDER BY dateposted ASC) AS Row
FROM comments
WHERE (comments.postid = @postid))
set @TotalRows = @@rowcount
@@ rowcount不起作用並引發錯誤。我也無法計數。*要麼工作。
有沒有另一種方式來獲得總的行數或我的方法註定。
設定了參數小時google搜索解決方案,我開始後認爲數據分頁只爲精英保留:-( – 2010-03-30 22:44:20