0

C#のSQLを使用して、テーブル内の新しいレコードまたは更新された(編集された)レコードのみをロードする方法はありますか?1000人の学生レコードで構成されるテーブルがあるとします。この情報をグリッドビューに表示し(これは単なる例です)、新しいエントリを追加または編集するときに、グリッドビューを更新して最新の変更を表示したいとします。テーブル。私が行って持っている場合

選択する *

ステートメント、これは間違いなくアプリケーションのパフォーマンスを低下させるので、以前にロードされたレコードにそれらの新しいレコードのみをグリッドビューに追加することを試みるのは良い考えだと思いました。しかし、私はそのようなタスクを実行する方法については無知です。

4

3 に答える 3

4

他に解決策はありません 。データベースを設計するだけです。

考えられる多くの解決策の1つにすぎません。データベースに挿入または更新されたすべてのレコードに対して、を設定できますtimestamp。その情報をデータベースに保存すると、次のことができます。

a)最新のものを入手し、timestamp観点から、DataGrid

b)darabaseから、それよりも大きいすべてのreoirdを取得しtimestampます。

繰り返しますが、これは多くの可能な解決策の1つにすぎません。要件に合うものは、自分で決定する必要があります。

于 2012-08-18T18:36:56.057 に答える
3

タイムスタンプ列を作成し、「最終更新日」を保存します。アプリケーション内に、データがデータベースから最後に取得された時刻を保存します。その後、変更(または追加)されたレコードのみを選択できます。

于 2012-08-18T18:35:22.093 に答える
3

最も簡単な方法は、 datetimeタイプのModifyDateなどの新しいフィールドをテーブルに追加し、レコードの挿入と更新時に現在の日時をこれらのフィールドに入力することです。

その場合、次のようにこのフィールドに基づいてクエリを選択できます。

Select Top 10 * from Table1 OrderBy ModifyDate desc 
于 2012-08-18T18:36:38.597 に答える