私はデータベース アプリケーションの初心者です。
より少ないメモリ フットプリントでページネーションを実装したいと考えています。アプリケーションは、MS SQL Server 2008 R2 DB に接続されています。
私が持っているテーブルは何千ものレコードで構成されており、アプリケーションは特定の基準でレコードをクエリできます。
クエリに LINQ-SQL を使用する現在の実装では、データ全体がアプリケーションに返されます。クエリが返す結果が多すぎると、プロセス メモリが使い果たされる可能性があります。したがって、これをページとして実装したいと思います。
データをページ分割できるいくつかのストアド プロシージャを Web で見つけました。
標準のページネーションが次の要件を満たすのに役立つかどうかわかりません
- メモリ フットプリントを削減し、オンデマンドで必要な結果のみを返します。
- クエリのステータスを保持します。ユーザーがビューでデータを見ている間に、同じレコードを更新できます。したがって、テーブルの現在の状態に関係なく、最後のクエリに関して、状態と結果の数を維持する必要があります。
- ページネーションの実装に LINQ を使用する場合、結果全体を保存するプロセスが読み込まれますか?