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çã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 a SQL Server. 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 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.