ISSAsynchStatus::Abort (OLE DB)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Bricht einen asynchron ausgeführten Vorgang ab.
Syntax
HRESULT Abort(
HCHAPTER hChapter,
DBASYNCHOP eOperation);
Argumente
hChapter[in]
Das Handle des Kapitels, für das der Vorgang abgebrochen werden soll. Wenn das aufgerufene Objekt kein Rowsetobjekt ist oder der Vorgang nicht für ein Kapitel gilt, muss der Aufrufer hChapter auf DB_NULL_HCHAPTER festlegen.
eOperation[in]
Der Vorgang, der abgebrochen werden soll. Der folgende Wert sollte verwendet werden:
DBASYNCHOP_OPEN – Die Anforderung zum Abbruch gilt für das asynchrone Öffnen oder Auffüllen eines Rowsets oder für die asynchrone Initialisierung eines Datenquellobjekts.
Rückgabecodewerte
S_OK
Die Anforderung zum Abbrechen des asynchronen Vorgangs wurde verarbeitet. Dies ist keine Garantie, dass der Vorgang selbst abgebrochen wurde. Um festzustellen, ob der Vorgang abgebrochen wurde, muss der Consumer ISSAsynchStatus::GetStatus aufrufen und auf den Wert DB_E_CANCELED prüfen. Dieser Wert wird ggf. jedoch nicht im nächsten Aufruf zurückgegeben.
DB_E_CANTCANCEL
Der asynchrone Vorgang kann nicht abgebrochen werden.
DB_E_CANCELED
Die Anforderung zum Abbrechen des asynchronen Vorgangs wurde während der Benachrichtigungen abgebrochen. Der Vorgang wird immer noch asynchron ausgeführt.
E_FAIL
Es ist ein anbieterspezifischer Fehler aufgetreten.
E_INVALIDARG
Der hChapter-Parameter ist nicht DB_NULL_HCHAPTER, oder eOperation ist nicht DBASYNCH_OPEN.
E_UNEXPECTED
ISSAsynchStatus::Abort
wurde für ein Datenquellobjekt aufgerufen, für das IDBInitialize::Initialize
nicht aufgerufen oder nicht abgeschlossen wurde.
ISSAsynchStatus::Abort
wurde für ein Datenquellenobjekt aufgerufen, für das IDBInitialize::Initialize
aufgerufen wurde, das dann aber vor der Initialisierung abgebrochen wurde oder das Zeitlimit überschritten hat. Das Datenquellobjekt wurde noch nicht initialisiert.
ISSAsynchStatus::Abort
wurde für ein Rowset aufgerufen, für das zuvor ITransaction::Commit
oder ITransaction::Abort
aufgerufen wurde, und das Rowset blieb nach dem Commit oder Abbruch nicht bestehen und befindet sich in einem Zombiezustand.
ISSAsynchStatus::Abort
wurde für ein Rowset aufgerufen, das in seiner Initialisierungsphase asynchron abgebrochen wurde. Das Rowset befindet sich in einem Zombiezustand.
Bemerkungen
Durch Abbrechen der Initialisierung eines Rowsets oder eines Datenquellobjekts wird das Rowset bzw. das Datenquellobjekt möglicherweise in einen Zombiezustand versetzt, sodass für alle Methoden außer IUnknown
-Methoden E_UNEXPECTED zurückgegeben wird. In diesem Fall hat der Consumer nur die Möglichkeit, das Rowset oder das Datenquellobjekt freizugeben.
Durch Aufrufen von ISSAsynchStatus::Abort
und Übergeben eines anderen Werts für eOperation als DBASYNCHOP_OPEN wird S_OK zurückgegeben. Dieser Wert bedeutet nicht, dass der Vorgang abgeschlossen oder abgebrochen wurde.