ISSAbort::Abort (OLE DB)

Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure azure Synapse Analytics Analytics Platform System (PDW)

Download del driver OLE DB

Annulla il set di righe corrente oltre a qualsiasi comando eseguito in batch associato al comando corrente.

L'interfacciaISSAbort, esposta nella OLE DB Driver per SQL Server, fornisce il ISSAbort::Abort metodo utilizzato per annullare il set di righe corrente e tutti i comandi in batch con il comando che inizialmente ha generato il set di righe e che non hanno ancora completato l'esecuzione.

ISSAbortè un'interfaccia specifica di OLE DB Driver per SQL Server disponibile utilizzando QueryInterface sull'oggetto IMultipleResults restituito da ICommand::Execute o IOpenRowset::OpenRowset.

Sintassi

  
HRESULT Abort(void);  

Osservazioni:

Se il comando interrotto è in una stored procedure, l'esecuzione della stored procedure (e di qualsiasi procedura che ha chiamato la procedura) verrà terminata insieme al batch di comandi che contiene la chiamata alla stored procedure. Se nel server è in corso il trasferimento di un set di risultati al client, questo processo verrà arrestato. Se il client non vuole usare un set di risultati, viene chiamato **ISSAbort::Abortbefore releasing the rowset will speed up the rowset release, but if there is an open transaction and XACT_ABORT is ON, the transaction will be rolled back whenISSAbort::Abort

Dopo ISSAbort::Abort aver restituito S_OK, l'interfaccia associata IMultipleResults entra in uno stato inutilizzabile e restituisce DB_E_CANCELED a tutte le chiamate di metodo (ad eccezione dei metodi definiti dall'interfaccia IUnknown ) fino a quando non viene rilasciata. Se un oggetto IRowset è stato ottenuto prima IMultipleResults di una chiamata a , passa anche a Abortuno stato inutilizzabile e restituisce DB_E_CANCELED a tutte le chiamate di metodo (ad eccezione dei metodi definiti dall'interfaccia IUnknown e IRowset::ReleaseRows) fino a quando non viene rilasciato dopo una chiamata riuscita a ISSAbort::Abort.

Nota

A partire da SQL Server 2005 (9.x), se lo stato XACT_ABORT del server è ON, l'esecuzione di ISSAbort::Abort terminerà qualsiasi transazione implicita o esplicita e ne eseguirà il rollback durante la connessione a SQL Server. Nelle versioni precedenti di SQL Server la transazione corrente non viene interrotta.

Argomenti

Nessuno.

Valori del codice restituito

S_OK
Il ISSAbort::Abort metodo restituisce S_OK se il batch è stato annullato e DB_E_CANTCANCEL in caso contrario. Se il batch è già stato annullato, viene restituito DB_E_CANCELED.

DB_E_CANCELED
Il batch è già stato annullato.

DB_E_CANTCANCEL
Il batch non è stato annullato.

E_FAIL
Si è verificato un errore specifico del provider. Per informazioni dettagliate, usare l'interfaccia ISQLServerErrorInfo.

E_UNEXPECTED
La chiamata al metodo non era prevista. Ad esempio, l'oggetto è in uno stato zombie perché ISSAbort::Abort è già stato chiamato.

E_OUTOFMEMORY
Errore di memoria insufficiente.