FirebirdSQL logo
 PACKAGE BODYFILTER 

Кто может объявить внешнюю функцию?

Выполнить оператор DECLARE EXTERNAL FUNCTION могут:

Пользователь, объявивший внешнюю функцию, становится её владельцем.

Примеры

Example 1. Объявление внешней функции с передачей входных и выходных параметров по ссылке
DECLARE EXTERNAL FUNCTION addDay
TIMESTAMP, INT
RETURNS TIMESTAMP
ENTRY_POINT 'addDay' MODULE_NAME 'fbudf';
Example 2. Объявление внешней функции с передачей входных и выходных параметров по дескриптору
DECLARE EXTERNAL FUNCTION invl
INT BY DESCRIPTOR, INT BY DESCRIPTOR
RETURNS INT BY DESCRIPTOR
ENTRY_POINT 'idNvl' MODULE_NAME 'fbudf';
Example 3. Объявление внешней функции с передачей входных параметров по ссылке, выходных по значению
DECLARE EXTERNAL FUNCTION isLeapYear
TIMESTAMP
RETURNS INT BY VALUE
ENTRY_POINT 'isLeapYear' MODULE_NAME 'fbudf';
Example 4. Объявление внешней функции с передачей входных и выходных параметров по дескриптору. В качестве выходного параметра используется второй параметр функции.
DECLARE EXTERNAL FUNCTION i64Truncate
NUMERIC(18) BY DESCRIPTOR, NUMERIC(18) BY DESCRIPTOR
RETURNS PARAMETER 2
ENTRY_POINT 'fbtruncate' MODULE_NAME 'fbudf';