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

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

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

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

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

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

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

Синтаксис функции:

  • CREATE [OR REPLACE] FUNCTION FuncName (ParamName [IN|OUT|IN OUT] ParamType, …)
  • RETURN Type_Return_Param
  • IS
  • Объявления Переменных
  • BEGIN
  • Выполняемые инструкции
  • [EXCEPTION
  • Обработчики исключений]
  • END;

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