Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Base de dados SQL no Microsoft Fabric
Cancela uma operação em execução assíncrona.
Sintaxe
HRESULT Abort(
HCHAPTER hChapter,
DBASYNCHOP eOperation);
Arguments
hCapítulo[em]
O nome do capítulo para abortar a operação. Se o objeto chamado não for um objeto de rowset ou a operação não se aplicar a um capítulo, o chamador deve definir hChapter como DB_NULL_HCHAPTER.
eOperação[in]
A operação para abortar. Deve-se usar o seguinte valor:
DBASYNCHOP_OPEN-The pedido de cancelamento aplica-se à abertura ou população assíncrona de um conjunto de linhas ou à inicialização assíncrona de um objeto fonte de dados.
Valores do código de retorno
S_OK
O pedido para cancelar a operação assíncrona foi processado. Não garante que a operação em si tenha sido cancelada. Para determinar se a operação foi cancelada, o consumidor deve ligar para ISSAsynchStatus::GetStatus e verificar DB_E_CANCELED; no entanto, pode não ser devolvido na próxima chamada.
DB_E_CANTCANCEL
A operação assíncrona não pode ser cancelada.
DB_E_CANCELED
O pedido para abortar a operação assíncrona foi cancelado durante as notificações. A operação continua a ser executada de forma assíncrona.
E_FAIL
Ocorreu um erro específico do fornecedor.
E_INVALIDARG
O parâmetro hChapter não é DB_NULL_HCHAPTER ou o eOperation não é DBASYNCH_OPEN.
E_UNEXPECTED
ISSAsynchStatus::Abort foi chamado a um objeto fonte de dados que IDBInitialize::Initialize não foi chamado, ou não foi concluído.
ISSAsynchStatus::Abort foi chamado num objeto fonte de dados no qual IDBInitialize::Initialize foi chamado mas depois cancelado antes da inicialização, ou que já expirou. O objeto fonte de dados ainda não está inicializado.
ISSAsynchStatus::Abort foi chamado para um rowset em que ITransaction::Commit ou ITransaction::Abort já tinha sido chamado, e o rowset não sobreviveu ao commit ou abort e está num estado zombie.
ISSAsynchStatus::Abort foi chamado num conjunto de linhas que foi cancelado assíncronamente na sua fase de inicialização. O rowset está num estado zumbi.
Observações
Abortar a inicialização de um conjunto de linhas ou objeto fonte de dados pode deixar o conjunto de linhas ou objeto fonte de dados num estado zumbi, de modo que todos os métodos que não IUnknown sejam métodos retornam E_UNEXPECTED. Quando isto acontece, a única ação possível para o consumidor é libertar o conjunto de linhas ou objeto fonte de dados.
Chamar ISSAsynchStatus::Abort e passar um valor para eOperation diferente de DBASYNCHOP_OPEN retorna S_OK. Este valor não implica que a operação tenha sido concluída ou cancelada.