AFX_ODBC_CALL
Użyj tego makra do wywołania dowolnej funkcji interfejsu API ODBC, które mogą zwracać SQL_STILL_EXECUTING.
AFX_ODBC_CALL(SQLFunc )
Parametry
- SQLFunc
Funkcję interfejsu API ODBC.Aby uzyskać więcej informacji na temat funkcji interfejsu API ODBC, zobacz Windows SDK.
Uwagi
AFX_ODBC_CALLwielokrotnie wywołuje funkcję aż do jej nie zwraca SQL_STILL_EXECUTING.
Przed wywołaniem AFX_ODBC_CALL, należy zadeklarować zmienną, nRetCode, typu RETCODE.
Należy zauważyć, że MFC ODBC klasy przetwarzania tylko synchronicznej wykorzystania teraz.Aby wykonać operację asynchroniczną, należy wywołać funkcję interfejsu API ODBC SQLSetConnectOption.Aby uzyskać więcej informacji, zobacz temat "Wykonywanie funkcji asynchronicznie" w Windows SDK.
Przykład
W tym przykładzie AFX_ODBC_CALL do wywołania SQLColumns funkcji ODBC API, która zwraca listę kolumn w tabeli o nazwie przez strTableName.Uwaga deklaracji nRetCode i wykorzystanie rekordów danych członków do przekazania parametrów do funkcji.Przykład ilustruje również sprawdzania wyników wywołania z sprawdzić, funkcji składowej klasy CRecordset.Zmienna prs jest wskaźnikiem do CRecordset obiektu zadeklarowane, gdzie indziej.
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"));
}
Wymagania
Nagłówek: afxdb.h