Freigeben über


SQLROLLBACK( )-Funktion

Macht alle Änderungen, die während der aktuellen Transaktion vorgenommen wurden, rückgängig.

SQLROLLBACK(nConnectionHandle)

Rückgabewerte

Numerisch

Parameter

  • nConnectionHandle
    Gibt das Verbindungshandle der Datenquelle an, das von SQLCONNECT( ) zurückgegeben wird.

Hinweise

SQLROLLBACK( ) gibt 1 zurück, wenn die Transaktion erfolgreich zurückgesetzt wurde. Andernfalls wird -1 zurückgegeben. In diesem Fall können Sie mit AERROR( ) ermitteln, warum die Transaktion nicht zurückgesetzt werden konnte.

Wenn manuelle Transaktionen aktiv sind (die Transactions-Eigenschaft von SQLSETPROP( ) ist auf Manual eingestellt), können Sie mehrere Aktualisierungsvorgänge an Remotetabellen senden. Alle Aktualisierungen können mit SQLROLLBACK( ) zurückgesetzt werden.

Aktualisierungen können mit Hilfe von SQLCOMMIT( ) übergeben werden.

Beispiel

Im folgenden Beispiel wird davon ausgegangen, dass SQLCONNECT( ) erfolgreich ausgeführt und der entsprechende Rückgabewert in der Speichervariablen gnConnHandle gespeichert wird. Die Transactions-Eigenschaft wird mit SQLSETPROP( ) auf 2 (Manual) gesetzt. Dann können Sie SQLCOMMIT( ) und SQLROLLBACK( ) verwenden.

Die Tabelle authors wird mit Hilfe von SQLEXEC( ) geändert. Die Änderungen werden mit SQLROLLBACK( ) aufgehoben.

= SQLSETPROP(gnConnHandle, 'Transactions', 2)  && manual
= SQLEXEC(gnConnHandle, "INSERT INTO authors (au_id, au_lname);
   VALUES ('aupoe', 'Poe')")
= SQLROLLBACK(gnConnHandle)

Siehe auch

AERROR( ) | SQLCOMMIT( ) | SQLCONNECT( ) | SQLSETPROP( )