ตัวอย่างนี้ปัญหาสอบถามใช้พารามิเตอร์อย่างง่ายที่ดึงระเบียนที่ มีเขตข้อมูลที่มีอายุ (ที่มีค่ามากกว่า 30) จากตารางในฐานข้อมูล Microsoft Access เพื่อสนับสนุนพารามิเตอร์ ระเบียนผู้ใช้ต้องมีแบบแผนที่เพิ่มเติม รหัสใช้คลาCCommandแทนคลาCTableที่ใช้ในตัวอย่างก่อนหน้านี้Traversing Rowset แบบง่าย ๆ?
#รวม lt;atldbcli.h >
CDataSource การเชื่อมต่อ
เซสชัน CSession
CCommand < CAccessor <CArtists> > ศิลปิน
การเชื่อมต่อเปิด (CLSID_MSDASQL, "NWind", "sa", "");
เซสชันOpen(connection)
/ / การตั้งค่าพารามิเตอร์แบบสอบถาม
artists.m_nAge = 30
ศิลปินเปิด (เซสชัน, "เลือก * จากศิลปินที่อายุ > ? ");
/ / รับข้อมูลจาก rowset
ในขณะที่ (ศิลปินMoveNext() == S_OK)
{
cout << artists.m_szFirstName
cout << artists.m_szLastName
}
บันทึกผู้ใช้ CArtists ลักษณะเช่นนี้:
คลาส CArtists
{
สาธารณะ:
/ / องค์ประกอบข้อมูล
CHAR m_szFirstName [20];
M_szLastName [30]; CHAR
m_nAge ย่อ
/ / แสดงผลรวมแผนที่
BEGIN_COLUMN_MAP(CArtists)
COLUMN_ENTRY (1, m_szFirstName)
COLUMN_ENTRY (2, m_szLastName)
COLUMN_ENTRY (3, m_nAge)
END_COLUMN_MAP()
/ / แผนที่การผูกพารามิเตอร์
BEGIN_PARAM_MAP(CArtists)
COLUMN_ENTRY (1, m_nAge)
END_PARAM_MAP
}