Á¤Àû Á¢±ÙÀÚ¸¦ »ç¿ë ÇÏ·Á¸é ¼ÒºñÀÚ´Â »ç¿ëÀÚ ·¹Äڵ带 ÀÖ¾î¾ß ÇÕ´Ï´Ù. »ç¿ëÀÚ ·¹ÄÚµå´Â ó¸® ÀÔ·Â ¶Ç´Â Ãâ·Â µ¥ÀÌÅÍ ¿ä¼Ò¸¦ Æ÷ÇÔ ÇÏ´Â c + + Ŭ·¡½ºÀÔ´Ï´Ù. ATL °³Ã¼ ¸¶¹ý»ç¸¦ »ç¿ë ÇÏ´Â ¼ÒºñÀÚ¿¡ ´ë ÇÑ »ç¿ëÀÚ ·¹Äڵ带 »ý¼ºÇÕ´Ï´Ù. ¸í·É ó¸® °°Àº ¼±ÅÃÀû ÀÛ¾÷À» À§ÇØ »ç¿ëÀÚ ·¹Äڵ忡 ¸Þ¼µå¸¦ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½ Äڵ忡¼´Â ¸í·ÉÀ» ó¸® ÇÏ´Â »ùÇà ·¹Äڵ带 º¸¿© ÁÝ´Ï´Ù. »ç¿ëÀÚ ·¹Äڵ忡¼ BEGIN_OLUMN_MAP ´Â °ø±ÞÀÚ ·ÎºÎÅÍ ¼ÒºñÀÚ¿¡ °Ô Àü´Þ µÈ µ¥ÀÌÅÍ Çà ÁýÇÕÀ» ³ªÅ¸³À´Ï´Ù. BEGIN_PARAM_MAP ¸í·É ¸Å°³ º¯¼ö ÁýÇÕÀ» ³ªÅ¸³À´Ï´Ù. ÀÌ ¿¹Á¦¿¡¼´Â CCommand Ŭ·¡½º¸¦ »ç¿ë ÇÏ ¿© ¸í·É ¸Å°³ º¯¼ö¸¦ ó¸® ÇÕ´Ï´Ù. Áöµµ Ç׸ñ¿¡¼ µ¥ÀÌÅÍ ¸â¹ö´Â Ŭ·¡½ºÀÇ °¢ ÀνºÅϽº¿¡ ´ë ÇÑ ¸Þ¸ð¸®ÀÇ ÇÑ ¿¬¼Ó ºí·Ï¿¡ ¿ÀÇÁ¼ÂÀ» ³ªÅ¸³À´Ï´Ù. COLUMN_ENTRY ¸ÅÅ©·Î °ø±ÞÀÚ Ãø¿¡ PROVIDER_COLUMN_ENTRY ¸ÅÅ©·Î¿¡ ÇØ´ç¡£
COLUMN_MAP ¹× PARAM_MAP ¸ÅÅ©·Î¿¡ ÀÚ¼¼ÇÑ ³»¿ëÀº OLE DB ¼ÒºñÀÚ ÅÛÇø´ÀÇ ¸ÅÅ©·Î ÂüÁ¶ ÇϽʽÿÀ.
Ŭ·¡½º CArtists
{
°ø°³:
/ / µ¥ÀÌÅÍ ¿ä¼Ò
CHAR m_szFirstName [20];
CHAR m_szLastName [30];
ªÀº 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
}
´ÙÀ½ ¿¹Á¦¿¡¼´Â Çà ÁýÇÕ¿¡¼ ¿©·¯ Á¢±ÙÀÚ¸¦ Áö¿ø Çϵµ·Ï ¼öÁ¤ µÈ »ç¿ëÀÚ ·¹Äڵ带 º¸¿© ÁÝ´Ï´Ù. BEGIN_COLUMN_MAP ¹× END_COLUMN_MAP´ë½Å »ç¿ë BEGIN_ACCESSOR_MAP ¹× BEGIN_ACCESSOR °¢ Á¢±ÙÀÚ¿¡ ´ë ÇÑ ÇÕ´Ï´Ù. BEGIN_ACCESSOR ¸ÅÅ©·Î Á¢±ÙÀÚ ¹øÈ£ (0 À¸·ÎºÎÅÍÀÇ ¿ÀÇÁ¼Â) ¹× Á¢±ÙÀÚÀÇ ÇÑ Á¢±ÙÀÚ ÀÎÁö ¿©ºÎ¸¦ ÁöÁ¤ ÇÕ´Ï´Ù. ÀÚµ¿À¸·Î MoveNext¸¦ È£Ãâ¿¡¼ µ¥ÀÌÅ͸¦ °Ë»ö ÇÏ·Á¸é GetData ¸¦ È£Ãâ ÇÏ´Â Autoaccessors. ºñ-ÀÚµ¿ Á¢±ÙÀÚ¸¦ »ç¿ë ÇÏ·Á¸é ¸í½ÃÀûÀ¸·Î µ¥ÀÌÅ͸¦ °Ë»ö ÇØ¾ß ÇÕ´Ï´Ù. ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù °Ë»öÀ» ¸ðµç ·¹Äڵ忡 ´ë ÇÑ (ºñÆ®¸Ê À̹ÌÁö)¿Í °°Àº Å« µ¥ÀÌÅÍ Çʵ忡 ¹ÙÀεùÇÏ´Â °æ¿ì¿¡ ÀÚµ¿ÀÌ ¾Æ´Ñ Á¢±ÙÀÚ¸¦ »ç¿ë ÇÏ ¿©¡£
cMultiArtists Ŭ·¡½º
{
°ø°³:
/ / µ¥ÀÌÅÍ ¿ä¼Ò
CHAR m_szFirstName [20];
CHAR 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()
BEGIN_ACCESSOR (1, false) / / ¾Æ´Õ´Ï´Ù ÀÚµ¿ Á¢±ÙÀÚ
COLUMN_ENTRY (3, m_nAge)
END_ACCESSOR()
END_ACCESSOR_MAP()
}