9.2 Добавление новых функций в MySQL
Существует два способа добавления функций в MySQL:
- Можно добавить функцию посредством интерфейса определяемых пользователем функций (user-definable function -
UDF
). Определяемые пользователем функции добавляются и удаляются динамически с помощью команд CREATE FUNCTION
и DROP FUNCTION
(see section 9.2.1 Синтаксис CREATE FUNCTION/DROP FUNCTION
).
- Можно добавить функцию как ``родную'' (встроенную) функцию MySQL. ``Родные'' функции компилируются вместе с остальным кодом сервера
mysqld
и становятся постоянно доступными.
Каждый метод имеет преимущества и недостатки:
- Если вы пишете определяемую пользователем функцию, то помимо сервера необходимо инсталлировать объектный файл. В этом нет необходимости при компиляции функции вместе с сервером.
- UDFы можно добавить в бинарную поставку MySQL. Для ``родных'' функций необходимо изменять поставку исходного кода.
- При обновлении поставки MySQL можно продолжать использовать ранее инсталлированные UDFы. Для ``родных функций нужно при каждом обновлении вносить изменения повторно.
Независимо от выбранного метода добавления новых функций, их можно использовать точно так же, как и встроенные функции, подобные ABS()
или SOUNDEX()
.
Главы
- 9.2.1 Синтаксис
CREATE FUNCTION/DROP FUNCTION
- 9.2.2 Добавление новой определяемой пользователем функции
-
- 9.2.2.1 Последовательность вызова UDF для простых функций
- 9.2.2.2 Последовательность вызова UDF для агрегатных функций
- 9.2.2.3 Обработка аргументов
- 9.2.2.4 Возвращаемые значения и обработка ошибок
- 9.2.2.5 Компиляция и установка определяемых пользователем функций
- 9.2.3 Добавление новых родных функции
Add your own comment.