スピードページング方法
1。アプリケーションの範囲
平均速度ページング法は、主に、記事システムやニュースシステムなどの固定された並べ替え方法を備えたASP+アクセスアプリケーションに適用されます。
2。機能の説明
いくつかの記事システムまたはニュースシステムを使用した多くの友人は、一般的な記事システムまたはニュースシステムが分類され、ページングされている場合、通常、条件を満たすデータベースのソートされたデータを読み、ポジショニング操作を通じて要求されたページ番号に従って特定のデータを指し、データの後にデータの後にいくつかのデータを読み始めます。このページネーション方法には単純な原則がありますが、問題は、条件を満たすデータベースのソートデータを読み取る必要があるたびに必要なことです。データが200万個の場合、これは問題ありませんが、2万個のデータがある場合はどうなりますか?これは、多くのメモリを消費し、多くのサーバーリソースを無駄にすることを示しています。もちろん、条件がある場合は、SQLデータベースを使用できます。これははるかに簡単です。少しストアドプロシージャですべての問題を解決できます。ただし、多くの友人がまだアクセスデータベースを使用する可能性があるため、何もすることはありません。もちろん、多くのダウンロードサイトと同様に、ページネーション用のHTMLを生成するプログラムもいくつかあります。この方法でどのような問題が発生するかについて考えたことがありますか?バックグラウンドで一度に1つのレコードを追加する場合、このカテゴリHTMLのすべてのページを1回再生する必要があります。これは確かです。考えてみてください、これは非常に効果的ですか?
平均速度ページング法は、アクセスデータベース内の大量のデータのページネーションの問題を解決するように設計されています。 HTMLページングと伝統的なAdoページングの利点を組み合わせています。まず、速度は高速で、リソースが少なくなります。最初のページであろうと最初の100ページであろうと、プログラムの速度は同じです。また、データを追加するときは、すべてのページを再生する必要はありません。以下の原則を紹介します
3。ページングの原則
データベースには記事テーブルとクラステーブルがあります。それが無限レベルの分類か2レベルの分類であるかを考慮しません。これは私たちとは何の関係もありません。
[記事] Idintidentity(1,1)notnull、classidintdefault0、titlevarchar(100)、addtimedateTime
[class] idintidentity(1,1)notnull、classnamevarchar(20)
1。ページングを生成します
クラステーブルに1のIDとclassNameが「ASP分類」とともにデータの行がある場合、最初にすべての記事でClassID = 1を使用してすべてのデータを取り出し、次にADDTIMEの昇順でアレンジします。これは通常のADOファセットと同じですが、以下で処理する必要があります。
[page_1]という名前のデータベース内のテーブルを動的に生成し、1は「ASP分類」のIDで自動的に番号が付けられた対応するクラス名です。
[page_1] pagenumint、pagesttext
最初に20個のデータごとにSTRを生成します。各STRは、実際には表示されたときに20のデータベースのリストであり、このSTRを番号にします。 0-19の記録の場合、xxxは001です。20-39の場合、xxxは002などです。 strとその数をpage_1に追加します。ここで最大のものは84であると仮定します