Compartilhar via


ISSAbort::Abort (OLE DB)

Cancela o conjunto de linhas atual mais todos os comandos em lote associados ao comando atual.

Sintaxe

  
HRESULT Abort(void);  

Observações

Se o comando que está sendo anulado estiver em um procedimento armazenado, a execução do procedimento armazenado (e todos os procedimentos 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 transferência de um conjunto de resultados para o cliente, isso será interrompido. Se o cliente não quiser consumir um conjunto de resultados, chamar ISSAbort::Abort antes de liberar o conjunto de linhas acelerará a versão do conjunto de linhas, mas se houver uma transação aberta e XACT_ABORT estiver ATIVADO, a transação será revertida quando ISSAbort::Abort for chamado

Depois que ISSAbort::Abort retorna S_OK, a interface IMultipleResults associada insere um estado inutilizável e retorna DB_E_CANCELED a todas as chamadas de método (exceto para métodos definidos pela interface IUnknown ) até que seja lançada. Se um IRowset tiver sido obtido de IMultipleResults antes de uma chamada para Abortar, ele também entrará em um estado inutilizável e retornará DB_E_CANCELED a todas as chamadas de método (exceto para métodos definidos pela interface IUnknown e IRowset::ReleaseRows) até que seja liberado após uma chamada bem-sucedida para ISSAbort::Abort.

Observação

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

Argumentos

Nenhum.

Valores do código de retorno

S_OK
O método ISSAbort::Abort retornará S_OK se o lote tiver sido cancelado e DB_E_CANTCANCEL caso contrário. Se o lote já tiver sido 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 foi inesperada. Por exemplo, o objeto está em um estado zumbi porque ISSAbort::Abort já foi chamado.

E_OUTOFMEMORY
Erro de memória insuficiente.

Consulte Também

ISSAbort (OLE DB)