FirebirdSQL logo

Fuseau horaire de la session

Le fuseau horaire de la session, comme son nom l’indique, peut être différent pour chaque connexion à la base de données.Il peut être défini avec le DPB isc_dpb_session_time_zone, et sinon, il sera lu à partir du paramètre DefaultTimeZone de la configuration firebird.conf.Si le paramètre DefaultTimeZone n’est pas défini, le fuseau horaire de la session sera le même que celui utilisé par le système d’exploitation dans lequel le processus Firebird est exécuté.

Le fuseau horaire de la session peut être modifié à l’aide de l’opérateur SET TIME ZONEou rétablissez la valeur d’origine avec `SET TIME ZONE LOCAL'.

Obtention d’un fuseau horaire de session

Vous pouvez obtenir le fuseau horaire actuel de la session en utilisant la fonction RDB$GET_CONTEXT avec les arguments 'SYSTEM' pour l’espace de noms et 'SESSION_TIMEZONE' comme nom de variable.

Example 1. Obtention d’un fuseau horaire de session
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