遍历简单行集合
下面的示例显示一种不涉及命令的快速而简便的数据库访问方法。 以下 ATL 项目中的使用者代码使用用于 ODBC 的 Microsoft OLE DB 提供程序从 Microsoft Access 数据库中称为 Artists 的表中检索记录。 此代码根据用户记录类 CArtists 用访问器创建 CTable 表对象。 它打开一个连接,在此连接上打开会话,然后在此会话上打开表。
#include <atldbcli.h>
CDataSource connection;
CSession session;
CTable<CAccessor<CArtists> > artists;
// Open the connection, session, and table, specifying authentication
// using Windows NT integrated security. Hard-coding a password is a major
// security weakness.
connection.Open(CLSID_MSDASQL, "NWind", NULL, NULL,
DBPROP_AUTH_INTEGRATED);
session.Open(connection);
artists.Open(session, "Artists");
// Get data from the rowset
while (artists.MoveNext() == S_OK)
{
cout << artists.m_szFirstName;
cout << artists.m_szLastName;
}
用户记录 CArtists 类似于:
class CArtists
{
public:
// Data Elements
CHAR m_szFirstName[20];
CHAR m_szLastName[30];
short m_nAge;
// Column binding map
BEGIN_COLUMN_MAP(CArtists)
COLUMN_ENTRY(1, m_szFirstName)
COLUMN_ENTRY(2, m_szLastName)
COLUMN_ENTRY(3, m_nAge)
END_COLUMN_MAP()