Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das folgende Beispiel zeigt schnellen und einfachen Datenbankzugriff, der keine Befehle umfasst. Der folgende Consumercode in einem ATL-Projekt ruft Datensätze aus einer Tabelle namens "Künstler " in einer Microsoft Access-Datenbank mithilfe des Microsoft OLE DB-Anbieters für ODBC ab. Der Code erstellt ein CTable-Tabellenobjekt mit einem Accessor basierend auf der Benutzerdatensatzklasse CArtists. Es öffnet eine Verbindung, öffnet eine Sitzung für die Verbindung und öffnet die Tabelle in der Sitzung.
#include <atldbcli.h>
#include <iostream>
using namespace std;
int main()
{
CDataSource connection;
CSession session;
CTable<CAccessor<CArtists>> artists;
LPCSTR clsid; // Initialize CLSID_MSDASQL here
LPCTSTR pName = L"NWind";
// 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, pName, 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;
}
return 0;
}
Der Benutzerdatensatz sieht CArtistswie im folgenden Beispiel aus:
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()
};