CDaoRecordset::Find
比較演算子を使用して、ダイナセット タイプのレコードセットまたはスナップショット タイプのレコードセットの特定の文字列を検索します。
virtual BOOL Find(
long lFindType,
LPCTSTR lpszFilter
);
パラメーター
lFindType
要求する検索操作の型を示す値。 次の値を指定できます。AFX_DAO_NEXT 次に来る一致する文字列の位置を検索します。
AFX_DAO_PREV 前にある一致する文字列の位置を検索します。
AFX_DAO_FIRST 最初に来る一致する文字列の位置を検索します。
AFX_DAO_LAST 最後にある一致する文字列の位置を検索します。
lpszFilter
レコードの位置検索に使われる文字列式 (SQL ステートメントの WHERE 句から WHERE を除いた部分に当たるようなもの)。 次に例を示しますrs.Find(AFX_DAO_FIRST, _T("EmployeeID = 7")); rs.Find(AFX_DAO_NEXT, _T("LastName = 'Jones'"));
戻り値
一致するレコードが見つかった場合は 0 以外を返します。それ以外の場合は 0 を返します。
解説
文字列の最初、次、前、最後のインスタンスを検索できます。 Find は仮想関数なので、オーバーライドし、独自の実装を追加できます。 FindFirst、FindLast、FindNext、および FindPrev メンバー関数は、Find メンバー関数を呼び出すため、すべての検索操作の動作を Find を使用して制御できます。
テーブル タイプのレコードセットのレコードを検索する場合は、Seek メンバー関数を呼び出します。
ヒント
レコードの集約が少ないほど、Find は能率的になります。 一般的に、特に ODBC データでは、必要なレコードだけを取得する新しいクエリを作成する方が効率的です。
関連情報については、DAO ヘルプの「FindFirst, FindLast, FindNext, FindPrevious Methods」を参照してください。
必要条件
**ヘッダー:**afxdao.h