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.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Banco de dados SQL no Microsoft Fabric
Cancela uma operação que está sendo executada de forma assíncrona.
Sintaxe
HRESULT Abort(
HCHAPTER hChapter,
DBASYNCHOP eOperation);
Argumentos
hChapter[in]
O identificador do capítulo que contém a operação a ser anulada. Se o objeto que está sendo chamado não for um objeto de conjunto de linhas ou se a operação não se aplicar a um capítulo, o chamador precisará definir hChapter como DB_NULL_HCHAPTER.
eOperation[in]
A operação a ser anulada. O seguinte valor deveria ser usado:
DBASYNCHOP_OPEN – a solicitação de cancelamento se aplica à abertura ou população assíncrona de um conjunto de linhas ou à inicialização assíncrona de um objeto de fonte de dados.
Valores do código de retorno
S_OK
A solicitação para cancelar a operação assíncrona foi processada. Isso não garante que a operação propriamente dita foi cancelada. Para determinar se a operação foi cancelada, o consumidor deve chamar ISSAsynchStatus::GetStatus e verificar DB_E_CANCELED; no entanto, esse valor pode não ser retornado na chamada seguinte.
DB_E_CANTCANCEL
A operação assíncrona não pode ser cancelada.
DB_E_CANCELED
A solicitação para anular a operação assíncrona foi cancelada durante notificações. A operação ainda está sendo executada de forma assíncrona.
E_FAIL
Ocorreu um erro específico de provedor.
E_INVALIDARG
O parâmetro hChapter não é DB_NULL_HCHAPTER ou eOperation não é DBASYNCH_OPEN.
E_UNEXPECTED
ISSAsynchStatus::Abort foi chamado em um objeto de fonte de dados no qual IDBInitialize::Initialize não foi chamado ou não foi concluído.
ISSAsynchStatus::Abort foi chamado em um objeto de fonte de dados no qual IDBInitialize::Initialize foi chamado, mas foi cancelado antes da inicialização ou atingiu o tempo limite. O objeto de fonte de dados permanece não inicializado.
ISSAsynchStatus::Abort foi chamado em um conjunto de linhas no qual ITransaction::Commit ou ITransaction::Abort foi chamado anteriormente, e o conjunto de linhas não sobreviveu à operação de confirmação ou anulação e está em um estado zumbi.
ISSAsynchStatus::Abort foi chamado em um conjunto de linhas cancelado de forma assíncrona em sua fase de inicialização. O conjunto de linhas está em um estado zumbi.
Comentários
Anular a inicialização de um conjunto de linhas ou objeto de fonte de dados pode deixar o conjunto de linhas ou o objeto de fonte de dados em um estado zumbi, de modo que todos os métodos diferentes de IUnknown retornam E_UNEXPECTED. Quando isso acontece, a única ação possível para o consumidor é liberar o conjunto de linhas ou objeto de fonte de dados.
Chamar ISSAsynchStatus::Abort e atribuir um valor a eOperation diferente de DBASYNCHOP_OPEN retorna S_OK. Esse valor não significa que a operação tenha sido concluída ou cancelada.