ISSAbort::Abort (OLE DB)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform Systeem (PDW)SQL-database in Microsoft Fabric

OLE DB-stuurprogramma downloaden

Hiermee annuleert u de huidige rijenset plus alle opdrachten in batches die aan de huidige opdracht zijn gekoppeld.

De ISSAbort interface, die wordt buitgemaakt in de OLE DB Driver voor SQL Server, biedt de ISSAbort::Abort methode waarmee de huidige rijset wordt geannuleerd plus alle commando's die zijn gebatched met het commando dat de rijset aanvankelijk genereerde en die nog niet zijn uitgevoerd.

ISSAbort is een OLE DB-driver voor SQL Server-specifieke interface beschikbaar door te gebruiken QueryInterface op het IMultipleResults object dat door ICommand::Execute of IOpenRowset::OpenRowsetwordt teruggegeven.

Syntaxis

  
HRESULT Abort(void);  

Opmerkingen

Als het commando dat wordt afgebroken in een opgeslagen procedure zit, wordt de uitvoering van de opgeslagen procedure (en alle procedures die die procedure hadden aangeroepen) beëindigd, evenals de commandobatch die de opgeslagen procedure aanroept. Als de server bezig is een resultaatset naar de client over te dragen, wordt de overdracht gestopt. Als de client geen resultaatset wil gebruiken, wordt ISSAbort::Abort 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 when' aangeroepen **

Na ISSAbort::Abort terugkeer S_OK gaat de bijbehorende IMultipleResults interface in een onbruikbare toestand en retourneert DB_E_CANCELED naar alle methodeaanroepen (behalve methoden die door de IUnknown interface zijn gedefinieerd) totdat deze wordt vrijgegeven. Als een IRowset was verkregen van IMultipleResults vóór een aanroep naar Abort, komt het ook in een onbruikbare toestand en retourneert DB_E_CANCELED naar alle methodeaanroepen (behalve methoden gedefinieerd door de IUnknown interface en IRowset::ReleaseRows) totdat het wordt vrijgegeven na een succesvolle aanroep naar ISSAbort::Abort.

Opmerking

Vanaf SQL Server 2005 (9.x), als de server XACT_ABORT status AAN is, zal het uitvoeren ISSAbort::Abort elke huidige impliciete of expliciete transactie terugrollen wanneer deze is verbonden met SQL Server. In eerdere versies van SQL Server wordt de huidige transactie niet afgebroken.

Arguments

Geen.

Retourcodewaarden

S_OK
De ISSAbort::Abort methode geeft S_OK terug als de batch is geannuleerd en DB_E_CANTCANCEL anders. Als de batch al is geannuleerd, wordt DB_E_CANCELED geretourneerd.

DB_E_CANCELED
De batch is al geannuleerd.

DB_E_CANTCANCEL
De batch is niet geannuleerd.

E_FAIL
Er is een providerspecifieke fout opgetreden; gebruik de interface ISQLServerErrorInfo voor gedetailleerde informatie.

E_UNEXPECTED
De aanroep van de methode was onverwacht. Bijvoorbeeld, het object is in een zombie-toestand omdat ISSAbort::Abort het al is aangeroepen.

E_OUTOFMEMORY
Fout met onvoldoende geheugen.