Хранимые функции — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Добавление статьи по теме "Хранимые функции" для курса "Базы данных".)
 
м (Добавил отличия в оглавление, чтобы сделать ссылку)
Строка 3: Строка 3:
 
'''Хранимая функция''' — фрагмент кода, хранящийся в БД, при исполнении которого может возвращаться как скалярное значение, так и таблицы.}}
 
'''Хранимая функция''' — фрагмент кода, хранящийся в БД, при исполнении которого может возвращаться как скалярное значение, так и таблицы.}}
  
'''Отличие от [[Хранимые процедуры|хранимых процедур]]''':
+
== Отличие от хранимых процедур ==
# Возврат скалярного значения
+
*Возврат скалярного значения
# Использование в выражениях
+
*Использование в выражениях
  
 
== Создание ==
 
== Создание ==

Версия 03:05, 20 декабря 2021

Определение:
Хранимая функция — фрагмент кода, хранящийся в БД, при исполнении которого может возвращаться как скалярное значение, так и таблицы.


Отличие от хранимых процедур

  • Возврат скалярного значения
  • Использование в выражениях

Создание

Синтаксис

При создании хранимой функции есть те же параметры, что и у хранимой процедуры, но в отличие от последней, нужно указать возвращаемый тип.

create [aggregate] function
имя(параметры)
returns тип
тело

В теле функции можем указывать оператор return, который приводит к возврату значения. Если в теле функции не будет оператора return, то считается, что данная функция возвращает null.

Пример

create function add(a int, b int) returns int
   return a + b;

Особенности

  • Обращение к таблицам. Многие СУБД запрещают в функции обращаться к таблицам.
  • Возвращаемые значения.
    • Поддержка встроенных типов есть всегда
    • Реже есть поддержка пользовательского типа или таблицы в качестве возвращаемого значения.

Литература