Tarantool CE/EE Documentation portal logo
Помощь
Обновлена 15 сентября 2026 г. в 08:55

upsert

upsert({tuple}, {{operator, field_identifier, value}, ...}, )

Параметры:

  • space_object (space_object) — ссылка на объект
  • tuple (table/tuple) — кортеж по умолчанию для вставки, если аналогичный кортеж не найден
  • operator (string) — тип операции, представленный строкой
  • field_identifier (number) — поле, к которому будет применена операция
  • value (lua_value) — значение, которое будет применено

Возвращает

null

Возможные ошибки:

  • Недопустимо изменять поле первичного ключа.
  • Недопустимо использовать upsert со спейсом, имеющим уникальный вторичный индекс.
  • ER_TRANSACTION_CONFLICT — при обнаружении конфликта транзакций в режиме MVCC-транзакций.
box.space.tester:upsert({12,'c'}, {{'=', 3, 'a'}, {'=', 4, 'b'}})