box.schema.func.create()
-
box.schema.func.
create
(func-name[, {options}]) Создание кортежа с функцией. Сама функция не создается – это делается с помощью Lua – но если необходимо выдать права функции, следует сначала выполнить box.schema.func.create. Чтобы получить информацию о том, как происходит управление данными функций в Tarantool’е, см. справочник по спейсу _func.
Возможны следующие опции:
if_not_exists
(если отсутствует) =true|false
(правда/ложь, по умолчанию ложь) - логическое значение boolean;true
(правда) означает, что ошибка не выпадет, если кортеж в_func
уже существует.setuid
=true|false
(по умолчанию, false) – значениеtrue
(правда) заставит Tarantool рассматривать пользователя, вызвавшего функцию, в качестве владельца функции с полными правами. Следует помнить, что SETUID работает только по бинарным портам. SETUID не сработает, если вызвать функцию через административную консоль или в Lua-скрипте.language
= „LUA“|“C“ (выбор языка из Lua и C; по умолчанию, ‘LUA’).
Параметры: - func-name (string) – имя функции, которое должно соответствовать правилам именования объектов
- options (table) –
if_not_exists
,setuid
,language
.
возвращает: nil
Пример:
box.schema.func.create('calculate') box.schema.func.create('calculate', {if_not_exists = false}) box.schema.func.create('calculate', {setuid = false}) box.schema.func.create('calculate', {language = 'LUA'})