AFX_ODBC_CALL
Verwenden Sie dieses Makro, um eine ODBC-API-Funktion aufrufen, die möglicherweise SQL_STILL_EXECUTING zurückgibt.
AFX_ODBC_CALL(SQLFunc )
Parameter
- SQLFunc
Eine ODBC-API-Funktion.Weitere Informationen über ODBC-API-Funktionen finden Sie unter Windows SDK.
Hinweise
AFX_ODBC_CALL ruft wiederholt die Funktion an, bis sie nicht mehr SQL_STILL_EXECUTING zurückgibt.
Bevor Sie AFX_ODBC_CALL aufrufen, müssen Sie eine Variable deklarieren, nRetCode des Typs RETCODE.
Beachten Sie, dass die MFC-ODBC-Klassen jetzt nur synchrone Verarbeitung verwendet werden.Um einen asynchronen Vorgang auszuführen, müssen Sie die ODBC-API-Funktion SQLSetConnectOption aufrufen.Weitere Informationen finden Sie, dass das ausgeführte Thema "in" asynchron Windows SDK funktioniert.
Beispiel
In diesem Beispiel wird AFX_ODBC_CALL, um die Funktion SQLColumns ODBC API aufzurufen, die eine Liste der Spalten in der Tabelle zurückgibt, die durch strTableName benannt ist.Beachten Sie die Deklaration von nRetCode und Verwendung von Recordsets datenmember, Parameter an die Funktion übergeben wird.Im Beispiel wird auch das Überprüfen der Ergebnisse des Aufrufs mit Aktivieren, eine Memberfunktion der Klasse CRecordset.Variable prs ist ein Zeiger auf ein CRecordset-Objekt an anderer Stelle deklariert.
RETCODE nRetCode;
AFX_ODBC_CALL(::SQLColumns(prs->m_hstmt, (SQLTCHAR*)NULL, SQL_NTS, (SQLTCHAR*)NULL,
SQL_NTS, (SQLTCHAR*)strTableName.GetBuffer(), SQL_NTS, (SQLTCHAR*)NULL, SQL_NTS));
if (!prs->Check(nRetCode))
{
AfxThrowDBException(nRetCode, prs->m_pDatabase, prs->m_hstmt);
TRACE(_T("SQLColumns failed\n"));
}
Anforderungen
Header: afxdb.h