FirebirdSQL logo
 Шифрование базы данныхДополнительные статьи 

SET TIME ZONE

Назначение

Изменение часового пояса сеанса.

Синтаксис
SET TIME ZONE { <time-zone-string> | LOCAL }

<time-zone-string> ::=
    '<time-zone>'

<time-zone> ::=
    <time-zone-region>
  | [+/-] <hour-displacement> [: <minute-displacement>]

Немедленно изменяет часовой пояс сеанса (текущего подключения).

Указание LOCAL вернет к начальному часовому поясу сеанса (либо по умолчанию, либо как указано в свойстве соединения isc_dpb_session_time_zone).

Получить текущий часовой пояс сеанса можно с использованием функции RDB$GET_CONTEXT с аргументами 'SYSTEM' для пространства имён и 'SESSION_TIMEZONE' в качестве имени переменной.

Note

Выполнение ALTER SESSION RESET оказывает такое же влияние на часовой пояс сеанса, что и SET TIME ZONE LOCAL, но также сбрасывает другие свойства сеанса.

Example 1. Изменение часового пояса сеанса
set time zone '-02:00';
select rdb$get_context('SYSTEM', 'SESSION_TIMEZONE') from rdb$database;
-- returns -02:00

set time zone 'America/Sao_Paulo';
select rdb$get_context('SYSTEM', 'SESSION_TIMEZONE') from rdb$database;
-- returns America/Sao_Paulo

set time zone local;