BEGIN_ACCESSOR_MAP
更新 : 2007 年 11 月
アクセサ マップ エントリの先頭を示します。
BEGIN_ACCESSOR_MAP(x, num )
パラメータ
x
[入力] ユーザー レコード クラスの名前。num
[入力] このアクセサ マップのアクセサ数。
解説
1 つの行セットに対して複数のアクセサが必要な場合は、先頭で BEGIN_ACCESSOR_MAP を指定し、各アクセサに対して BEGIN_ACCESSOR マクロを使用する必要があります。BEGIN_ACCESSOR マクロは END_ACCESSOR マクロで完了します。アクセサ マップは END_ACCESSOR_MAP マクロで完了します。
ユーザー レコードにアクセサが 1 つしかない場合は、BEGIN_COLUMN_MAP マクロを使用します。
使用例
class CArtistsAccessor
{
public:
// Data Elements
TCHAR m_szFirstName[21];
TCHAR m_szLastName[31];
short m_nAge;
// Output binding map
BEGIN_ACCESSOR_MAP(CArtistsAccessor, 2)
BEGIN_ACCESSOR(0, true)
COLUMN_ENTRY(1, m_szFirstName)
COLUMN_ENTRY(2, m_szLastName)
END_ACCESSOR()
BEGIN_ACCESSOR(1, false) // Not an auto accessor
COLUMN_ENTRY(3, m_nAge)
END_ACCESSOR()
END_ACCESSOR_MAP()
HRESULT OpenDataSource()
{
CDataSource _db;
_db.Open();
return m_session.Open(_db);
}
void CloseDataSource()
{
m_session.Close();
}
CSession m_session;
DEFINE_COMMAND_EX(CArtistsAccessor, L" \
SELECT \
FirstName, \
LastName, \
Age \
FROM Artists")
};
必要条件
ヘッダー : atldbcli.h