การใช้หลาย Accessors บน Rowset

ตัวอย่างนี้ใช้หลาย accessors ในการเรียกข้อมูลชุดหนึ่ง โปรแกรมประยุกต์อาจใช้หลาย accessors การปรับตั้งค่าการเข้าถึงข้อมูล Rowset การดึงข้อมูลที่สามารถใช้ได้ โดยหลาย accessors หนึ่งบล็อก (การเข้าถึงที่ถูกกำหนดในOLE DB User ระเบียน)

#รวม lt;atldbcli.h >

CDataSource การเชื่อมต่อ
เซสชัน CSession
CTable < CAccessor <CMultiArtists> > ศิลปิน
 
/ / ทำการเชื่อมต่อฐานข้อมูล เซสชัน และ accessors
การเชื่อมต่อเปิด (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]; CHAR
   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 Consumer สถานการณ์ (ตัวอย่าง)

Index