Кто может объявить внешнюю функцию?
Выполнить оператор DECLARE EXTERNAL FUNCTION могут:
-
Пользователи с привилегией
CREATE FUNCTION.
Пользователь, объявивший внешнюю функцию, становится её владельцем.
Выполнить оператор DECLARE EXTERNAL FUNCTION могут:
Пользователи с привилегией CREATE FUNCTION.
Пользователь, объявивший внешнюю функцию, становится её владельцем.
DECLARE EXTERNAL FUNCTION addDay
TIMESTAMP, INT
RETURNS TIMESTAMP
ENTRY_POINT 'addDay' MODULE_NAME 'fbudf';
DECLARE EXTERNAL FUNCTION invl
INT BY DESCRIPTOR, INT BY DESCRIPTOR
RETURNS INT BY DESCRIPTOR
ENTRY_POINT 'idNvl' MODULE_NAME 'fbudf';
DECLARE EXTERNAL FUNCTION isLeapYear
TIMESTAMP
RETURNS INT BY VALUE
ENTRY_POINT 'isLeapYear' MODULE_NAME 'fbudf';
DECLARE EXTERNAL FUNCTION i64Truncate
NUMERIC(18) BY DESCRIPTOR, NUMERIC(18) BY DESCRIPTOR
RETURNS PARAMETER 2
ENTRY_POINT 'fbtruncate' MODULE_NAME 'fbudf';
ALTER EXTERNAL FUNCTIONИзменение точки входа и/или имени модуля для функции определённой пользователем (UDF).
DSQL
ALTER EXTERNAL FUNCTION funcname [ENTRY_POINT 'new_entry_point'] [MODULE_NAME 'new_library_name'];
| Параметр | Описание |
|---|---|
funcname |
Имя внешней функции. |
new_entry_point |
Новое имя экспортируемой функции (точки входа). |
new_library_name |
Новое имя модуля, в котором расположена функция. |
Оператор ALTER EXTERNAL FUNCTION изменяет точку вход и/или имя модуля для функции определённой пользователем (UDF). При этом существующие зависимости сохраняются.
Предложение ENTRY_POINT позволяет указать новую точку входа (имя экспортируемой функции).
Предложение MODULE_NAME позволяет указать новое имя модуля, в котором расположена экспортируемая функция.
Выполнить оператор ALTER EXTERNAL FUNCTION могут:
Владелец внешней функции;
Пользователи с привилегией ALTER ANY FUNCTION.
ALTER EXTERNAL FUNCTION invl ENTRY_POINT 'intNvl';
ALTER EXTERNAL FUNCTION invl MODULE_NAME 'fbudf2';
DROP EXTERNAL FUNCTIONУдаление объявления функции определённой пользователем (UDF) из базы данных.
DSQL, ESQL.
DROP EXTERNAL FUNCTION funcname
| Параметр | Описание |
|---|---|
funcname |
Имя внешней функции. |
Оператор DROP EXTERNAL FUNCTION удаляет объявление функции определённой пользователем из базы данных.Если есть зависимости от внешней функции, то удаления не произойдёт и будет выдана соответствующая ошибка.
Выполнить оператор DROP EXTERNAL FUNCTION могут:
Владелец внешней функции;
Пользователи с привилегией DROP ANY FUNCTION.
DROP EXTERNAL FUNCTION addDay;