行セットでの複数アクセサーの使用

この例では、複数のアクセサーを使用して 1 つのデータ セットを取得します。アプリケーションは、複数のアクセサーを使用してデータ アクセスを最適化する可能性があります。行セットでは、複数のアクセサーを使用することができますデータの 1 つのブロックを取得します。(アクセサー OLE DB ユーザー レコードで定義されています)。

#include lt;atldbcli.h >CDataSource 接続;CSession セッション;CTable < CAccessor <CMultiArtists> > アーティスト;・ データベース、セッション、およびアクセサーを接続接続。オープン (CLSID_MSDASQL、"NWind"、"sa"、"");セッション。Open(connection);アーティスト。開く (セッション、「アーティスト」);//データを取得(中のアーティスト。MoveNext() S_OK = =){cout << artists.m_szFirstName;cout << artists.m_szLastName;アーティスト。GetData(1);//その他のアクセサーのデータの取得cout << artists.m_nAge;}

ユーザー レコードを次のように見える:

cMultiArtists をクラスします。{パブリック。//データ要素CHAR m_szFirstName [20];M_szLastName [30]; 文字します。短い m_nAge;//出力バインディング マップBEGIN_ACCESSOR_MAP (CMultiArtists、2)BEGIN_ACCESSOR (0, true)COLUMN_ENTRY (1, m_szFirstName)COLUMN_ENTRY (2 日 m_szLastName)END_ACCESSOR(0)BEGIN_ACCESSOR (1、false)/しないか自動アクセサーCOLUMN_ENTRY (3、m_nAge)END_ACCESSOR()END_ACCESSOR_MAP()}

戻る一般的な OLE DB コンシューマー シナリオ (例)

Index