CSDNが提供するページネーションプログラム「Infinite Streams」。
以下は、そのコード・スニペットです。
'******************************************************************
'** プログラム名: "Infinite Stream" ページング・プログラム
'** 作者 アービター (AAsx)
'**バージョン。ミリオンレベル
'**
'** QQ: 22222xx
'** Eメール [email protected]
'** http://www.imagecity.org/
'******************************************************************
'**
'** 【著者のことば】。
'**
'** ページング処理は、多くのウェブプログラムの機能の中でも特に厄介なものであることは間違いなく、実際、現在では
'** 今でも従来のページング方法(Rs.PageSize=xx)を使っている大多数の人を阻止するため、そして理解するために
'** データベース操作について知っている人なら誰でも、この伝統的な方法には欠点があることを知っています:最初にページを開くときに
'** すべてのレコードセットを事前に読み込むので、データが大きい場合には致命的であり、また、そのレコードをピックアップしている。
'** 次のページめくりも非常に遅く、リソースを消費する可能性があります。10万桁を超えるデータに対して
従来の'**ライブラリのページングでは、100万はおろか、すでに非常に弱い(操作不可能)。
'**の作業)。そのため、このプログラムを作るように促されたのです。
'**
'** [プログラム機能
'**
'** 大規模データベースのページング(理想は200万レコード)。
'**以下(Max Level版では数の制限はなく、ページネーション速度は
Celeron 1G, RAM 512, Win2k ringでのMillion Level版のページングプログラムです。
'**環境でのテストデータです。
'**
'** SQLserver 2k + 100,000 レコード + 1ページあたり20レコード。
'** 平均ページ回転速度:45ms
'** SQLserver 2k + 100万レコード + 1ページあたり20レコード。
'** 平均ページ回転速度:350ms
'**
'**
'** [ページングプリンシプル
'**
'** このプログラムは、接続されたデータベースのカーソルタイプをページ分割するために Rs.PageSize を使用しなくなりました。
'** また、conn,1,x を使用する代わりに conn,0,1 を使用しますが、これは最速のカーソルタイプであるべきです。
'** これでプログラムが複雑になると思っているようですが、逆にプログラムはとてもシンプルで、もしあなたが
'** あなたが慣れていないのは、私のプログラミングのスタイルであって、プログラムの複雑さではないはずです。
'** 無限ストリームページングの核心は、1ページごとに表示する必要のあるレコードだけを読み出すことであり、もはや従来のように、表示する必要がない。
'** ページングプログラムはすべてのデータを事前に読み込むので、リソースの消費が少なく、これが最大のメリットです。
'** 処理速度も非常に向上し、特にデータ量が多くなると、その速度の優位性
'** より明らかです(100万レコードで約350msしかありません)。
'** プログラムを実行すると、CurcorBeginとCurcorEndのレコードを使って表示される最初のレコード
'** レコードのID値と最後のレコードを次のページをめくるときの目印にし、Top xxで
'** 表示したいデータを取り出しながら、再度ID値を記録します。
'**
'** [結論
'**
'** このプログラムは共有バージョンで、各プログラムの愛好家に研究および使用のために提供され、もしあなたが再現、拡散、修復したい場合は
'** 複製、頒布、改変、その他の目的で使用する場合は、作者の労をねぎらい、出典を明記してください。
'** このプログラムに誤り、脱落、最適でない、その他の欠点がある場合は、www.csdn.net的Web开发/ までご連絡ください。
'** ASPコラムを投稿する議論、中国のソフトウェアビジネスの発展のために、停滞しないでください:)
'**
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
[...]
CursorEnd=CursorBegin(カーソルエンド=カーソルビギン
SQLstr="Select Top "&DefRecordNum&"_。
ID,タイトル,FileName,K,ImgSize,NameSon_(英語版のみ
ABCから ID<"&CursorBegin&_ まで
" And ID In (Select Top "&DefRecordNum_)
&" ID From ABC Where ID<"&CursorBegin_
&" Order by ID DESC) Order by ID"
ケース "next"。
SQLstr="Select Top "&DefRecordNum_。
&" ID,Title,FileName,K,ImgSize,NameSon From ABC Where ID>"&CursorEnd&_.
ID順で並べます。
選択終了
Set Rs=conn.Execute(SQLstr,0,1)
%>
td,br,div,p,body {font-size:12px}の場合。
最初のページ 前のページ
次のページ
ID
タイトル
ファイル名
サイズ
サイズ
カテゴリー
ホーム 前ページ 次ページ
関数 turnpage(func){
var CurPageNum=; //現在のページ番号を取得する
var CursorBegin=; //最初に表示されたレコードのID値を取得する
var CursorEnd=; //最後に表示されたレコードのID値を取得する
var TotalPages=; //総ページ数の取得
var BackUrl='mllist.asp?CurPageNum='+(CurPageNum-1)+'&CursorBegin='+CursorBegin+'&CursorEnd='+CursorEnd+'&hav=back' とします。
var NextUrl='mllist.asp?CurPageNum='+(CurPageNum+1)+'&CursorBegin='+CursorBegin+'&CursorEnd='+CursorEnd+'&hav=next' となります。
if(CurPageNum<=1 && func=='戻る'){。
location.href='#';
}else if(CurPageNum>=TotalPages && func=='next'){.
location.href='#';
}else if(func=='back'){。
location.href=BackUrl。
}else if(func='next'){。
location.href=NextUrl。
}
}
関連
-
htmlにflv形式のファイルを埋め込むためのコード
-
html に rm 形式の動画ファイルを挿入するためのコード
-
html に wmv 動画ファイルを挿入するためのコード
-
タイムポイントに応じた音楽再生のためのasx実装コード
-
FireFox用MediaPlayerプラグイン(正常にMediaPlayerを再生できます。)
-
asp.netのページに一般的なビデオを追加するいくつかの方法
-
ウェブメディアプレーヤーの互換性問題について(オリジナルコード付き) ダウンロード
-
asxプレイリストファイルの複数曲の連続再生
-
音楽ファイルの再生時間や現在の進行状況を取得する
-
html に mpg 動画ファイルを挿入するためのコード
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
SyntaxHighlighter.jsのコードがハイライト時に点滅しないようにするための解決策です。
-
html に avi 形式の動画ファイルを挿入するためのコード
-
WMVウェブプレーヤーのパラメータを中国語で解説
-
映画システムは "Polycom "加速プレーヤー、カードではない意志でドラッグを呼び出します。
-
ポリコム3.90プレイヤーコールコード
-
flvプレイヤー Webページでflvを再生する
-
ウィンドウメディアプレーヤー再生
-
[解決済み】React - uncaught TypeError: 未定義のプロパティ 'setState' を読み取れない
-
組み込み用RealPlayerのパラメータの意味
-
オンラインFLVプレーヤーの実装方法