CDaoRecordset::FindFirst
最初のレコードを検索するには、このメンバー関数を呼び出して、指定した条件に一致します。
BOOL FindFirst(
LPCTSTR lpszFilter
);
- lpszFilter
レコードを見つけるために使用される文字列式 (Word WHEREのない SQL ステートメントの WHERE 句など)。
一致するレコードがある場合はゼロ以外の場合は 0。
FindFirst のメンバー関数でレコードセットの先頭から検索を開始し、レコードセットの最後に検索します。
レコード間の移動に、(特定の条件を満たす) を使用して移動の操作の 1 つがを検索にすべてのレコードを含める場合は。テーブル タイプのレコードセットのレコードを探すには、Seek のメンバー関数を呼び出します。
条件に合致するレコードがキャッチされない場合、現在のレコード ポインターは不定のと FindFirst のゼロを返します。レコードセットが基準を満たす複数のレコードが含まれている場合、FindFirst は最初の出現箇所を検索します FindNext、次の生成などを検索します。
注意 |
---|
現在のレコードを編集した場合は、更新 のメンバー関数を呼び出すことで変更を保存する必要があります。別のレコードに移動する前にします。別のレコードに更新せずに実行され、変更は警告なしに失われます。 |
[検索] のメンバー関数は、場所から次の表で指定した方向に検索します:
検索操作 |
Begin |
検索の方向 |
---|---|---|
FindFirst |
レコードセットの先頭 |
レコードセットの最後 |
FindLast |
レコードセットの最後 |
レコードセットの先頭 |
FindNext |
現在のレコード |
レコードセットの最後 |
FindPrevious |
現在のレコード |
レコードセットの先頭 |
[!メモ]
FindLastを呼び出すと、Microsoft Jet データベース エンジンは、調査を開始する前に完全に実行していない場合、レコードセットに設定します。最初の検索は、後で検索に時間がかかる場合があります。
ただし、検索の 1 つを使用して操作は、MoveFirst か MoveNextを呼び出してと条件を指定しないで最初または次のレコードの現在値を行う同じ。移動の操作を検索操作の後に入力できます。
検索操作を使用するときは、以下を考慮する:
[検索] がゼロ以外の値を返した場合、現在のレコードは定義されません。この場合、有効なレコードに対して現在のレコード ポインターを設定する必要があります。
前方スクロール専用スクロール スナップショット タイプのレコードセットの検索操作を使用できません。
Microsoft Jet データベース エンジンの米国の.. バージョンを使用しない場合でも、日付を格納するフィールドを検索するときに、米国.. の日付形式が必要です (月日) を使用する; それ以外の場合、一致するレコードが見つからない場合があります。
検索操作を使用して、遅くなることを ODBC データベースと大きなダイナセットを使用する場合は、検出できる、特に大きなレコードセット、を使用したとき。ORDERBY または WHERE のカスタマイズされた句、パラメーター クエリ、または特定のインデックスのレコードを取得する CDaoQuerydef のオブジェクトと、SQL クエリを使用すると、パフォーマンスが向上します。
関連情報については、「FindFirst、FindLast、FindNext の DAO ヘルプ FindPrevious のメソッド」"を参照してください。
Header: afxdao.h