FirebirdSQL logo

SET DECFLOAT TRAPS

Оператор SET DECFLOAT TRAPS изменяет поведение ошибок при операциях с типом DECFLOAT.

По умолчанию исключения генерируются для следующих ситуаций: DIVISION_BY_ZERO,INVALID_OPERATION,OVERFLOW;это значение по умолчанию соответствует поведению, определенному в стандарте SQL: 2016 для DECFLOAT.Этот оператор контролирует, приводят ли определенные исключительные условия к ошибке (“ловушка” или “trap”) илиальтернативной обработке (например, потеря значимости возвращает 0, если не установлена, либо переполнение возвращает бесконечность).Первоначальная конфигурация соединения также может быть указана с помощью тега DPB isc_dpb_decfloat_trapsс желаемыми значениями trap_opt, разделенными запятыми, в виде строкового значения.

Допустимые варианты ловушек (исключительных условий):

Division_by_zero

(по умолчанию)

Inexact

 — 

Invalid_operation

(по умолчанию)

Overflow

(по умолчанию)

Underflow

 — 

Example 1. Установка ситуаций для которых будет генерироваться исключение
SET DECFLOAT TRAPS TO Division_by_zero, Inexact, Invalid_operation, Overflow, Underflow;

Тайм-ауты

В Firebird существует два вида тайм-аута:

  • тайм-аут простоя соединения;

  • тайм-аут выполнения SQL оператора.