Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Conformidade
Versão introduzida: ODBC 3.8
Conformidade de padrões: nenhum
Resumo
SQLAsyncNotificationCallback permite que um driver notifique o Gerenciador de Driver quando houver algum progresso na operação assíncrona atual, após o driver retornar SQL_STILL_EXECUTING.
SQLAsyncNotificationCallback só pode ser chamado pelo driver.
Os drivers não chamam SQLAsyncNotificationCallback com o nome da função SQLAsyncNotificationCallback. Em vez disso, o Gerenciador de Driver passa um ponteiro de função para um driver como o valor do atributo SQL_ATTR_ASYNC_DBC_NOTIFICATION_CALLBACK ou SQL_ATTR_ASYNC_STMT_NOTIFICATION_CALLBACK do identificador de conexão ou identificador de instrução correspondente, respectivamente. Diferentes identificadores podem receber diferentes valores de ponteiro de função. O tipo do ponteiro de função é definido como SQL_ASYNC_NOTIFICATION_CALLBACK.
SQLAsyncNotificationCallback é thread-safe. Um driver pode optar por usar vários threads chamando SQLAsyncNotificationCallback em diferentes identificadores simultaneamente.
Sintaxe
typedef SQLRETURN (SQL_API *SQL_ASYNC_NOTIFICATION_CALLBACK)(
SQLPOINTER pContex,
BOOL fLast);
Arguments
pContex
Ponteiro para uma estrutura de dados definida pelo Gerenciador de Driver. O valor é passado para o driver por meio de SQLSetConnectAttr(SQL_ATTR_ASYNC_DBC_NOTIFICATION_CONTEXT) ou SQLSetStmtAttr(SQL_ATTR_ASYNC_STMT_NOTIFICATION_CONTEXT). O driver não tem acesso ao valor.
fLast
Usado por um driver para indicar quando essa chamada de função de retorno é a última para a operação assíncrona atual. O driver retornará um código de retorno diferente de SQL_STILL_EXECUTING quando o Gerenciador de Drivers chamar a função novamente. O Gerenciador de Driver pode usar essas informações, por exemplo, para informar ao aplicativo com antecedência que a operação assíncrona será concluída.
Se Handle não for um identificador válido do tipo especificado pelo HandleType, SQLCancelHandle retornará SQL_INVALID_HANDLE.
Devoluções
SQL_SUCCESS ou SQL_ERROR.
Diagnostics
SQLAsyncNotificationCallback pode retornar SQL_ERROR para as duas situações a seguir (elas indicam um problema de implementação no driver ou no Gerenciador de Driver.
| Erro | Description |
|---|---|
| A conexão ou declaração não solicitou notificação. | |
| Identificador inválido | O driver passou um identificador inválido, que falhou nos testes internos de validação do Gerenciador de Drivers. |