SQLROLLBACK( ) (Función)
Cancela los cambios realizados durante la transacción actual.
SQLROLLBACK(nConnectionHandle)
Valores devueltos
Numeric
Parámetros
- nConnectionHandle
Especifica el identificador de conexión al origen de datos devuelto por SQLCONNECT( ).
Observaciones
SQLROLLBACK( ) devuelve 1 si la transacción se deshace; en caso contrario, devuelve -1. Si SQLROLLBACK( ) devuelve -1, puede utilizar AERROR( ) para determinar porqué no fue posible deshacer la transacción.
Si están vigentes las transacciones manuales (la propiedad de la transacción SQLSETPROP( ) está establecida como Manual), puede enviar varias actualizaciones a tablas remotas. Las actualizaciones se pueden deshacer con SQLROLLBACK( ).
Las actualizaciones se pueden confirmar con SQLCOMMIT( ).
Ejemplo
En el ejemplo siguiente se supone que SQLCONNECT( ) se ejecuta correctamente y su valor devuelto se almacena en una variable de memoria llamada gnConnHandle
. SQLSETPROP( ) se utiliza para establecer la propiedad Transactions a 2 (Manual), lo que le permite usar SQLCOMMIT( ) y SQLROLLBACK( ).
La tabla authors
se modifica con SQLEXEC( ) y los cambios realizados a la tabla se cancelan con SQLROLLBACK( ).
= SQLSETPROP(gnConnHandle, 'Transactions', 2) && manual
= SQLEXEC(gnConnHandle, "INSERT INTO authors (au_id, au_lname);
VALUES ('aupoe', 'Poe')")
= SQLROLLBACK(gnConnHandle)