oci_rollback
(PHP 5, PHP 7, PHP 8, PECL OCI8 >= 1.1.0)
oci_rollback - Відкочує транзакції, що очікують обробки
Опис
oci_rollback(resource $connection): bool
Ця функція відкочує всі незафіксовані зміни з'єднання Oracle connection
та завершує транзакцію. Вона також звільняє всі встановлені блокування. Видаляються всі Oracle SAVEPOINTS
Транзакція починається при першому SQL-запиті, який змінює дані, який був запущений за допомогою функції oci_execute()и флага**OCI_NO_AUTO_COMMIT
**. Наступні зміни даних від інших запитів також стають частиною цієї транзакції. Зміни, зроблені в транзакції, є тимчасовими доти, доки транзакція не буде зафіксована або буде здійснено її відкат. Інші користувачі бази даних не зможуть побачити зміни до їхньої фіксації.
При вставці або оновленні даних рекомендується використовувати транзакції для збереження цілісності даних та збільшення продуктивності.
Список параметрів
connection
Ідентифікатор з'єднання Oracle, отриманий із функцій oci_connect() oci_pconnect() або oci_new_connect()
Значення, що повертаються
Повертає true
у разі успішного виконання або **false
**в случае возникновения ошибки.
Приклади
Приклад #1 Приклад використання oci_rollback()****
Loading...
Приклад #2 Приклад использования отката доSAVEPOINT
Loading...
Примітки
Зауваження :
Транзакції будуть автоматично відкачені під час закриття з'єднання або закінчення скрипту (залежно від того, що станеться раніше). Для фіксації транзакції необхідно явно викликати функцію oci_commit()
Усі виклики oci_execute(), явно або за замовчуванням, що використовують режим
OCI_COMMIT_ON_SUCCESS
зафіксують будь-яку попередню незафіксовану транзакцію.Будь-який DDL-запит Oracle, такий як
CREATE
илиDROP
автоматично фіксує будь-яку незафіксовану транзакцію.
Дивіться також
- oci_commit() - підтверджує транзакцію бази даних
- oci_execute() - Виконує підготовлений вираз