Цей приклад використовує кілька методів доступу — щоб отримати один набір даних. Застосунок може використовувати декілька методів доступу — для оптимізації доступу до даних. На набір рядків отримує один блок даних, які можуть використовувати декілька методів доступу —. (У функції доступу визначено в OLE DB користувача запису).
# включити lt;atldbcli.h >
CDataSource з'єднання;
CSession сесії;
CTable < CAccessor <CMultiArtists> > Художники;
/ / Підключення бази даних, сесії і методів доступу —
підключення.Відкрити (CLSID_MSDASQL, "NWind", "sa", "");
сесії.Open(Connection);
художників.Відкрити (сесія, "художників");
/ / Отримати дані
під час (художників.MoveNext() = = S_OK)
{
суд << artists.m_szFirstName;
суд << artists.m_szLastName;
художників.GetData(1); / / Отримати дані для інших методів доступу
суд << artists.m_nAge;
}
Запис користувача виглядає наступним чином:
клас CMultiArtists
{
готелю:
/ / Елементів даних
CHAR m_szFirstName [20];
CHAR m_szLastName [30];
короткий m_nAge;
/ / виводу прив'язування карта
BEGIN_ACCESSOR_MAP (CMultiArtists, 2)
BEGIN_ACCESSOR (0, правда)
COLUMN_ENTRY (1, m_szFirstName)
COLUMN_ENTRY (2, m_szLastName)
END_ACCESSOR(0)
BEGIN_ACCESSOR (1, помилкові) / / не функції автоматичного доступу
COLUMN_ENTRY (3, m_nAge)
END_ACCESSOR()
END_ACCESSOR_MAP()
}