Compartilhar via


ISSAbort::Abort (OLE DB)

Cancela o conjunto de linhas atual, além de todos os comandos em lote associados ao comando atual.

Sintaxe

HRESULT Abort(void);

Comentários

Se o comando que está sendo anulado está em um procedimento armazenado, a execução deste (e de quaisquer procedimentos armazenados que chamaram esse procedimento) será encerrada, bem como o lote de comandos que contém a chamada de procedimento armazenado. Se o servidor estiver no processo de transferir um conjunto de resultados para o cliente, ele será interrompido. Se o cliente não desejar consumir um conjunto de resultados, chamar ISSAbort::Abort antes de liberar o conjunto de linhas agilizará a liberação do conjunto de resultados, mas se houver uma transação aberta e XACT_ABORT estiver ON, a transação será revertida quando ISSAbort::Abort for chamado.

Depois que ISSAbort::Abort retornar S_OK, a interface IMultipleResults associada entrará em um estado inutilizável e retornará DB_E_CANCELED para todas as chamadas de método (com exceção dos métodos definidos pela interface IUnknown) até que seja liberada. Se um IRowset foi obtido de IMultipleResults antes de uma chamada para Abort, também entrará em um estado inutilizável e retornará DB_E_CANCELED para todas as chamadas de método (com exceção dos métodos definidos pela interface IUnknown e IRowset::ReleaseRows) até que seja liberado após uma chamada bem-sucedida para ISSAbort::Abort.

ObservaçãoObservação

A partir do SQL Server 2005, se o estado XACT_ABORT do servidor estiver ON, a execução de ISSAbort::Abort encerrará e reverterá qualquer transação implícita ou explícita atual quando conectada ao SQL Server. Versões anteriores do SQL Server não anularão a transação atual.

Argumentos

Nenhum.

Valores de código de retorno

  • S_OK
    O método ISSAbort::Abort retorna S_OK se o lote foi cancelado e DB_E_CANTCANCEL em caso contrário. Se o lote já foi cancelado, DB_E_CANCELED será retornado.

  • DB_E_CANCELED
    O lote já foi cancelado.

  • DB_E_CANTCANCEL
    O lote não foi cancelado.

  • E_FAIL
    Ocorreu um erro específico do provedor. Para obter informações detalhadas, use a interface ISQLServerErrorInfo.

  • E_UNEXPECTED
    A chamada para o método era inesperada. Por exemplo, o objeto está em um estado de zumbi porque ISSAbort::Abort já foi chamado.

  • E_OUTOFMEMORY
    Erro de memória insuficiente.

Consulte também

Outros recursos

ISSAbort (OLE DB)