系統列表分頁的實現

2021-04-27 21:26:08 字數 1796 閱讀 9202

設計思路

儲存過程取得資料查詢結果及記錄總數

將返回的記錄填充至 sdataset 僅填充指定長度的資料記錄

sdataset 中提供方法可以根據自己的記錄數量進行分頁  

**舉例

procedure [dbo].[et_user_list]

@key varchar(255) = null,

@gradeid int = 0,

@levelid int = 0

as--    宣告變數

declare @sqlwhere varchar(255)

declare @returnsql nvarchar(255)

declare @returnvalue int

--    初始化變數

set @sqlwhere = '';

set @returnsql = '';

--    關鍵字查詢

if @key<>'' begin

set @sqlwhere = ' where (username=''' + @key + ''' or email=''' + @key + ''' ) ';

endelse

set @sqlwhere = ' where userid>0 ';

--    是否檢索分組

if @gradeid>0

set @sqlwhere = @sqlwhere + ' and gradeid=' + ltrim(@gradeid) + ' ';

--    是否檢索分級

if @levelid>0

set @sqlwhere = @sqlwhere + ' and levelid=' + ltrim(@levelid) + ' ';

--    統計記錄總數

set @returnsql = 'set @return = (select count(*) from db_user ' + @sqlwhere + ')'

exec ('select * from db_user ' + @sqlwhere);

exec sp_executesql @returnsql, n'@return int output', @returnvalue output ;

return @returnvalue;

///

/// 執行儲存過程

///

/// string 儲存過程的名稱

/// int 頁碼

/// int 頁尺寸

/// sqlparameter 儲存過程所需引數

/// sdataset 返回資料

/// int 返回值

public int runproc(string procedure, int pageid, int pagesize, sqlparameter params, ref sdataset data)

public class sdataset : dataset

if (_pageid < 7)

_result.add(_pageprevious);

if (_pageleft > 1)

for (int i = _pageleft; i <= _pageright; i++)

}if (_pageright < _pagecount)

_result.add(_pagenext);

return (int)_result.toarray(typeof(int));

}#endregion

}

Django實現文章列表的分頁功能

一 重寫檢視函式article list,實現分頁功能 login required login url account login def article list request 請求使用者的文章列表 articles list articlepost.objects.filter author...

系統搜尋分頁功能的實現

1.生成頁面的實體類物件,放在bean包中 public class pageinfo 同時自動生成getandset tostring方法 2.在搜尋欄實現搜尋,並支援模糊查詢 這裡需要重寫之前的findall方法,在dao層重新宣告方法 list findall param start int ...

SSRS列表分頁

1 頁面高度分頁 設定interactivesize 在互動式呈現報表時的頁首預設大小 屬性的高度 2 根據記錄條數來分頁 當每條記錄呈現的高度不一致,我們又希望讓每頁呈現的記錄條數一致,那麼我們可以通過記錄條數來分頁。在通過記錄條數分頁時,通常是 根據記錄條數來分組,然後在組的結束位置新增分頁符。...