пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Программирование в интернет:
» ПИ
» ОКГТМ
» КИНФС

Мова PL/SQL. Процедур, що зберігаються. Структура та синтаксис процедур. Виклик процедур.

Хранимые подпрограммы - это именуемые блоки кода SQL, которые заранее откомпилированы и хранятся на сервере для того, чтобы быстро проводить обработку запросов, валидацию данных и другие часто выполняемые функции. Помимо хранимых процедур, существуют локальные.

Отличия от локальных подпрограмм: (в скобках про локальные подпрограммы).

  • Сохраняются в БД в скомпилированном p-коде, при вызове подпрограмму не надо компилировать. (Компилируются фрагменты и блоки, содержащиеся в них. При повторном выполнении делается новая компиляция.)
  • Могут вызываться из любого блока, запущенного на выполнение пользователем, имеющий привилегии EXECUTE для этой подпрограммы. (Могут вызываться только из блока, что удерживает их.)
  • Код подпрограммы сохраняется отдельно от вызывающего блока, поэтому вызывающий блок короче и легче для понимания. Кроме того, при желании с подпрограммой и вызывающим блоком можно работать отдельно. (Подпрограмма и вызывающий блок находятся в одном месте, что может привести к путанице. Если изменения вносятся в вызывающий блок, то подпрограмму необходимо компилировать заново.)
  • Скомпилирован p-код можно закрепить в пуле, разделяемой с помощью модульной процедуры DBMS_SHARED_POOL.KEEP. Это приводит к повышению производительности системы в целом. (Локальные подпрограммы нельзя закреплять в разделяемом пуле.)

Процедура – подпрограмма, которую вызывают для того, чтобы выполнить некоторое действие.

Хранимые процедуры позволяют повысить производительность, расширяют возможности программирования и поддерживают функции безопасности данных.

Вместо хранения часто используемого запроса, клиенты могут ссылаться на соответствующую хранимую процедуру. При вызове хранимой процедуры её содержимое сразу же обрабатывается сервером.

Структура:

  1. CREATE [OR REPLACE] PROCEDURE имя_процедуры
  2. [(параметр [, параметр, …])] IS
  3. [локальные объявления]
  4. BEGIN
  5. исполняемые предложения
  6. [EXCEPTION
  7. обработчики исключений]
  8. END [имя_процедуры];

Вызов:

EXEC имя_процедуры;

Удаление:

DROP PROCEDURE имя_процедуры;


20.01.2016; 18:01
хиты: 305
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь