Артём Санников

Персональный блог

Мобильная разработка
Менеджеры пакетов
Хостинг провайдер
Смартфоны
› Общее представление о процедурах в PL/SQL Oracle

Общее представление о процедурах в PL/SQL Oracle

Хранимые процедуры состоят из одного или целого ряда операторов PL/SQL, охраняемых в Oracle для последующего применения. Хранимые процедуры можно рассматривать в качестве пакетных файлов, хотя их названия значительно отличаются друг от друга.

Процедуры написаны на языке PL/SQL, поскольку это процедурный язык, который предоставляет все необходимые средства, в том числе условные операторы if, циклы и т.д.

Причины для применения хранимых процедур

  • Упростить сложные операции, инкапсулируя все процессы в едином месте;
  • Обеспечить целостность данных, не требуя многократного повторения каждый раз одной и той же последовательности действий;
  • Предотвращение ошибок;
  • Упростить управление изменениями; Если изменяются имена таблиц и столбцов, бизнес-логика или всё, что угодно, то достаточно обновить код только у хранимой процедуры;
  • Ограничение доступа к исходным данным через хранимые процедуры уменьшает вероятность порчи данных;
  • Повышение производительности, поскольку хранимые процедуры, как правило, выполняются быстрее, чем отдельные SQL запросы.

Другими словами, хранимые процедуры дают основные преимущества: безопасность, простоту и производительность. Но не стоит закрывать глаза и на недостатки этих процедур.

  • Написать код для хранимых процедур сложнее, чем простые запросы SQL. Для их написания требуется квалификация и опыт;
  • Для написания процедур может понадобиться доступ через систему безопасности.

Отличие процедур от функций

Функции и хранимые процедуры очень похожи в том отношении, что позволяют инкапсулировать функциональные возможности отдельными блоками. Главное отличие функций от хранимых процедур заключается в том, что они всегда возвращают единственное значение аналогично функциям SQL. А процедуры не возвращают значения, хотя они и принимают параметры, которые могут быть использованы для обмена данными с хранимыми процедурами.

Написанный код и выполняемые операции в теле функции и хранимым процедур практически одинаковы. Отличие заключается лишь в том, каким образом код используется и выполняется.

Метки: , .

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

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

Реклама от Google
Реклама от Google