Documentación offline PHP master

oci_rollback

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

oci_rollback

Anula las transacciones Oracle en curso

Descripción#

oci_rollback(resource $connection): bool
```php

Anula todas las modificaciones no confirmadas para una conexión `connection` Oracle y finaliza la transacción actual. Todos los bloqueos serán liberados asimismo. Todos los puntos de guardado Oracle (`SAVEPOINTS`) serán eliminados.

Una transacción comienza cuando la primera consulta SQL que modifica datos es ejecutada con la función `oci_execute` utilizando el flag `OCI_NO_AUTO_COMMIT`. Las modificaciones siguientes realizadas por otras consultas se convierten en parte de la misma transacción. Las modificaciones realizadas durante una transacción son temporales hasta que la transacción sea confirmada o anulada. Los demás usuarios de la base de datos no verán estas modificaciones hasta la confirmación de la transacción.

Al insertar o actualizar datos, el uso de transacciones es altamente recomendado para garantizar la consistencia relacional de los datos, pero también por razones de rendimiento.

## Parámetros

`connection`  
Un identificador de conexión Oracle, devuelto por la función `oci_connect`, `oci_pconnect` o `oci_new_connect`.

## Valores devueltos

Esta función retorna `true` en caso de éxito o `false` si ocurre un error.

## Ejemplos

Ejemplo con `oci_rollback`
Ejemplo de retorno a un punto de guardado (`SAVEPOINT`)

```php

Notas#

[!NOTE] Las transacciones son anuladas automáticamente al cerrar la conexión, o cuando el script finaliza, cualquiera de los dos que ocurra primero. Debe llamarse explícitamente a la función oci_commit para confirmar la conexión.

Todas las llamadas a la función oci_execute que utilizan el modo OCI_COMMIT_ON_SUCCESS, ya sea por defecto o de forma explícita, confirmarán todas las transacciones pendientes.

Todas las consultas Oracle como CREATE o DROP confirmarán asimismo, automáticamente, todas las transacciones pendientes.

Véase también#

oci_commit, oci_execute