AFX_ODBC_CALL
Use esta macro para chamar qualquer função de ODBC API que 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 API ODBC, consulte Windows SDK.
Comentários
AFX_ODBC_CALL chama repetidamente até que a função não retorna SQL_STILL_EXECUTING.
Antes de invocar AFX_ODBC_CALL, você deve declarar uma variável, nRetCode, do tipo RETCODE.
Observe que as classes de MFC ODBC usam agora apenas processamento síncrono. Para executar uma operação assíncrona, você deve chamar a função SQLSetConnectOptionde ODBC API. Para obter mais informações, consulte o tópico “que executa funciona de forma assíncrona” em Windows SDK.
Exemplo
Este exemplo usa AFX_ODBC_CALL para chamar a função de API ODBC de SQLColumns , que retorna uma lista das colunas na tabela chamada por strTableName. Observe a declaração de nRetCode e o uso de membros de dados do conjunto de registros passar parâmetros para a função. O exemplo também ilustra verificar os resultados da chamada com Verificar, uma função de membro da classe CRecordset. prs variável é um ponteiro para um objeto de CRecordset , 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
Header: afxdb.h