AFX_ODBC_CALL
Usar essa macro para telefonar qualquer função de API do ODBC pode retornar SQL_STILL_EXECUTING.
AFX_ODBC_CALL(SQLFunc )
Parâmetros
- SQLFunc
Uma função de ODBC API.Para obter mais informações sobre as funções de API do ODBC, consulte o Windows SDK.
Comentários
AFX_ODBC_CALL chama a função repetidamente até que ela retorna não mais SQL_STILL_EXECUTING.
Antes de invocar AFX_ODBC_CALL, você deve declarar uma variável nRetCode, do tipo RETCODE.
Observe o ODBC do MFC classes agora uso apenas síncrono processamento.Para efetuar uma operação assíncrono, você deve telefonar ODBC API funcionar SQLSetConnectOption.Para obter mais informações, consulte o tópico "Executando funções assincronamente" noWindows SDK.
Exemplo
Este exemplo usa AFX_ODBC_CALL para chamar a SQLColumns Função de API do ODBC, que retorna uma lista das colunas na tabela nomeada por strTableName. Observe a declaração de nRetCode e o uso de membros de dados do conjunto de registros para passar parâmetros para a função. O exemplo também ilustra verificando os resultados da telefonar com Seleção, uma função de membro de classe CRecordset. A variável prs é um ponteiro para um CRecordset objeto, declarado em outro lugar.
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"));
}
Requisitos
Cabeçalho: afxdb.h