Основы PL/pgSQL в СУБД PostgreSQL

Курс по изучению процедурного расширения PL/pgSQL в СУБД PostgreSQL. Основная концепция PL/pgSQL заключается в том, чтобы преодолеть ограничения языка SQL и предоставить разработчикам новые возможности для работы с базами данных.

Поступить на курс

Погружение в базы данных PostgreSQL

Данный курс является консолидацией теоретических основ и практических примеров, которые демонстрируют работу операторов и функций SQL в системе управления базами данных PostgreSQL.

Поступить на курс

JSON в PostgreSQL

Курс «JSON в PostgreSQL» познакомит вас с форматом JSON и покажет, как создавать и обрабатывать JSON-данные в СУБД PostgreSQL.

Поступить на курс

XML в PostgreSQL

Курс по изучению и практическому применению расширяемого языка разметки XML (eXtensible Markup Language) в системе управления базами данных PostgreSQL.

Поступить на курс

Оконные функции в PostgreSQL

Курс по изучению и практическому применению оконных функций в системе управления базами данных PostgreSQL.

Поступить на курс

Массивы в PostgreSQL

Курс по изучению и практическому применению массивов (array) в системе управления базами данных PostgreSQL.

Поступить на курс

 ›  ›  ›  › Оператор COMMIT в PL/SQL Oracle

Оператор COMMIT в PL/SQL Oracle

Результаты выполнения операторов SQL в Oracle обычно записываются непосредственно в таблицы базы данных. Это так называемая неявная фиксация – автоматическая запись или сохранение результатов выполнения операции.

Но блоку транзакций может потребоваться явная фиксация. В таком случае данные сохраняются с помощью оператора COMMIT. Давайте рассмотрим это на практическом примере:

В таблице Users и Works содержится информация о сотрудниках и их деятельности в компании, и по причине увольнения сотрудника нам нужно удалить информацию, которая связана с этим сотрудником из всех таблиц.

Сейчас мы произвели удаление информации о сотруднике и его деятельности, которая содержится в двух таблицах. А поскольку эти операции связаны с обновлением нескольких таблиц базы данных, то во избежание частичного удаления данных используем блок транзакций.

Если первый оператор DELETE удастся выполнить, а второй – не удастся, результаты удаления не будут зафиксированы (они будут автоматически отменены).

DELETE FROM Users WHERE id_user = 100;
DELETE FROM Works WHERE id_user = 100;
COMMIT;

Метки: , , .

Записи по теме

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *