CRecordset::GetStatus
レコードセット内の現在のレコードのインデックスや、最終レコードが認識されているかどうかを調べます。
void GetStatus(
CRecordsetStatus& rStatus
) const;
パラメーター
- rStatus
CRecordsetStatus オブジェクトへの参照。 詳細については、次の「解説」を参照してください。
解説
CRecordset はインデックスを監視しようとしていますが、監視できない場合もあります。 その理由については、「CRecordset::GetRecordCount」を参照してください。
CRecordsetStatus 構造体の形式を次に示します。
struct CRecordsetStatus
{
long m_lCurrentRecord;
BOOL m_bRecordCountFinal;
};
CRecordsetStatus の 2 つのメンバーの意味を次に示します。
m_lCurrentRecord レコードセットの現在のレコードのインデックスがわかっていれば、0 から開始するインデックスとして保持します。 インデックスがわからないときは、AFX_CURRENT_RECORD_UNDEFINED (-2) を保持します。 IsBOF が TRUE (レコードセットが空、または先頭レコードより前にスクロールしようとした) のとき、m_lCurrentRecord は AFX_CURRENT_RECORD_BOF (-1) に設定されます。 先頭レコードのときは 0、2 番目のときは 1 というようにセットされます。
m_bRecordCountFinal レコードセットのレコードの総数がわかっているときは 0 以外になります。 通常レコードの総数は、レコードセットの先頭から IsEOF が 0 以外を返すまで、MoveNext 関数を繰り返し呼び出すことによって数えられます。 このメンバーが 0 で、GetRecordCount が返すレコード数が -1 でないときは、返されるレコード数はレコードの "最高水位線" でしかありません。
必要条件
**ヘッダー:**afxdb.h