CBulkRowset クラス
フェッチは一つの呼び出しで複数の行ハンドルの取得によって大量のデータで実行する行を処理します。
template <class TAccessor>
class CBulkRowset : public CRowset<TAccessor>
パラメーター
- TAccessor
アクセサー クラス。
メンバー
メソッド
参照カウントをインクリメントします。 |
|
コンストラクターです。 |
|
新しいバルク行フェッチを必要に応じて実行データの最初の行を取得します。 |
|
最後の行に移動します。 |
|
データの次の行を取得します。 |
|
前の行に移動します。 |
|
ブックマークに含めるか、ブックマークの指定されたオフセットで行を示す行フェッチします。 |
|
フェッチは行セットの分数で表現した位置から開始します。 |
|
リリースと現在の行 (m_nCurrentRow) をすべての行ゼロに設定します。 |
|
1 回の呼び出しが取得される行ハンドルの数を設定します。 |
使用例
次の例では CBulkRowset クラスの使い方を示しています。
class CCustomerData
{
public:
char m_szField1[50];
BEGIN_COLUMN_MAP(CCustomerData)
COLUMN_ENTRY(1, m_szField1)
END_COLUMN_MAP()
};
void DoCBulkRowsetTest()
{
CoInitialize(NULL);
CCommand<CAccessor<CCustomerData>, CBulkRowset > cmd;
CDataSource ds;
// Open up data link dialogs to create a data source
ds.Open();
CSession session;
session.Open(ds);
// Could call SetRows() here if you want to fetch
// more than 10 HROWs at a time.
cmd.Open(session, L"Select * from customer");
cmd.MoveFirst();
// Note that the CBulkRowset by default fetched 10 HROWs at a time
// so that the MoveNext call will not have to make the GetNextRows
// call to get the second HROW because it has already been fetched
//by the MoveFirst() call above.
cmd.MoveNext();
cmd.Close();
session.Close();
ds.Close();
}
必要条件
ヘッダー: atldbcli.h