CDaoRecordset::Find
更新 : 2007 年 11 月
比較演算子を使用して、ダイナセット タイプのレコードセットまたはスナップショット タイプのレコードセットの特定の文字列を検索します。
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