次の方法で共有


CDaoRecordset::GetRecordCount

更新 : 2007 年 11 月

レコードセット内のレコードでアクセスされたレコードの数を調べます。

long GetRecordCount( );

戻り値

レコードセット オブジェクトでアクセスされたレコード数を返します。

解説

GetRecordCount はダイナセット タイプのレコードセット、またはスナップショット タイプのレコードセットにあるレコード数について、すべてのレコードがアクセスされるまで値を示しません。このメンバ関数の呼び出しは、完了するまでかなりの時間がかかることがあります。

一度最後のレコードがアクセスされると、戻り値は、レコードセットの削除されていないレコードの総数を示します。最後のレコードに強制的にアクセスさせるには、そのレコードセットの MoveLast または FindLast メンバ関数を呼び出します。クエリが戻すレコードのおおよその数を調べるには、SQL Count を使用することもできます。

ダイナセット タイプのレコードセットでアプリケーションがレコードを削除すると、GetRecordCount の戻り値は減少します。しかし、ほかのユーザーにより削除されたレコードは、現在のレコードがその削除されたレコードに位置付けられるまで、GetRecordCount には反映されません。レコード数に影響するトランザクションを実行し、引き続きそのトランザクションをロールバックすると、GetRecordCount は残されたレコードの実際の数を反映しなくなります。

スナップショット タイプのレコードセットでの GetRecordCount の値は、基になるテーブルの変更による影響を受けません。

テーブル タイプのレコードセットでの GetRecordCount の値は、テーブルのおおよそのレコード数であり、テーブル レコードが追加されたり、削除されるとすぐに反映されます。

レコードがないレコードセットでは、値 0 が返されます。アタッチ テーブルまたは ODBC データベースで作業しているときは、GetRecordCount は常に -1 を返します。レコードセットの Requery メンバ関数を呼び出すと、GetRecordCount の値は、クエリを再実行した場合と同じ値にリセットされます。

関連情報については、DAO ヘルプの「RecordCount Property」を参照してください。

必要条件

ヘッダー : afxdao.h

参照

参照

CDaoRecordset クラス

階層図

CDaoRecordset::GetFieldCount

CDaoRecordset::GetFieldInfo

CDaoRecordset::GetIndexCount

CDaoRecordset::GetIndexInfo

その他の技術情報

CDaoRecordset のメンバ