Función JetRollback
Se aplica a: Windows | Windows Server
Función JetRollback
La función JetRollback deshace los cambios realizados en el estado de la base de datos y vuelve al último punto de retorno. JetRollback también cerrará los cursores abiertos durante el punto de retorno. Si se deshaga el punto de guardado más externo, la sesión cerrará la transacción.
JET_ERR JET_API JetRollback(
__in JET_SESID sesid,
__in JET_GRBIT grbit
);
Parámetros
sesid
Sesión que se va a usar para esta llamada.
grbit
Un grupo de bits que contienen las opciones que se usarán para esta llamada, que incluyen cero o más de lo siguiente:
Valor |
Significado |
---|---|
JET_bitRollbackAll |
Esta opción solicita que se desactiven todos los cambios realizados en el estado de la base de datos durante todos los puntos de guardado. Como resultado, la sesión saldrá de la transacción. |
Valor devuelto
Esta función devuelve el tipo de datos JET_ERR con uno de los siguientes códigos de retorno. Para obtener más información sobre los posibles errores de ESE, vea Extensible Storage Engine Errors and Error Handling Parameters.
Código devuelto |
Descripción |
---|---|
JET_errSuccess |
La operación se ha completado correctamente. |
JET_errClientRequestToStopJetService |
No es posible completar la operación porque toda la actividad de la instancia asociada a la sesión ha dejado de funcionar como resultado de una llamada a JetStopService. |
JET_errInstanceUnavailable |
No es posible completar la operación porque la instancia asociada a la sesión ha encontrado un error irrecuperable que requiere que se revoque el acceso a todos los datos para proteger la integridad de esos datos. Windows XP solo devolverá este error y versiones posteriores. |
JET_errNotInitialized |
No es posible completar la operación porque la instancia asociada a la sesión aún no se ha inicializado. |
JET_errNotInTransaction |
Error en la operación porque la sesión especificada no está en una transacción. |
JET_errRestoreInProgress |
No es posible completar la operación porque hay una operación de restauración en curso en la instancia asociada a la sesión. |
JET_errRollbackError |
No era posible revertir los cambios debido a un error irrecuperable. |
JET_errSessionSharingViolation |
No se puede usar la misma sesión para más de un subproceso al mismo tiempo. Windows XP solo devolverá este error y versiones posteriores. |
JET_errTermInProgress |
No es posible completar la operación porque se está cerrando la instancia asociada a la sesión. |
Si se ejecuta correctamente, los cambios realizados en la base de datos durante el punto de guardado actual de la sesión dada se desharán y se finalizará ese punto de guardado. Si el último punto de guardado de la sesión finalizó, la sesión saldrá de la transacción.
En caso de error, el estado transaccional de la sesión permanecerá sin cambios. No se producirá ningún cambio en el estado de la base de datos. Un error durante la reversión se considera un error catastrófico de base de datos.
Comentarios
Debe haber una llamada a JetCommitTransaction o JetRollback para que coincida con cada llamada a JetBeginTransaction para una sesión determinada.
Si se abrió algún cursor (mediante JetOpenTable, por ejemplo) durante un punto de retorno que se revierte, ese cursor se cerrará.
Requisitos
Requisito | Value |
---|---|
Cliente |
Requiere Windows Vista, Windows XP o Windows 2000 Professional. |
Servidor |
Requiere Windows Server 2008, Windows Server 2003 o Windows 2000 Server. |
Encabezado |
Declarado en Esent.h. |
Library |
Use ESENT.lib. |
Archivo DLL |
Requiere ESENT.dll. |
Consulte también
JET_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction