CURRENT TIMEZONE 专用寄存器
CURRENT TIMEZONE (或 CURRENT_TIMEZONE) 专用寄存器指定 UTC (全球标准时间,以前称为 GMT) 与应用程序服务器上的本地时间之间的差异。
差异由持续时间表示 (十进制数,其中前两位是小时数,后两位是分钟数,后两位是秒数)。 小时数在 -24 到 24 之间 (独占)。 从本地时间减去 CURRENT TIMEZONE 会将该本地时间转换为 UTC。 该时间从执行 SQL 语句时的操作系统时间开始计算。 (CURRENT TIMEZONE 值由 C 运行时函数确定。)
如果使用 DECIMAL (6, 0) 数据类型的表达式,那么可以使用 CURRENT TIMEZONE 专用寄存器; 例如,在时间和时间戳记算术中。
在例程内的 SQL 语句中使用时,不会从调用语句继承 CURRENT TIMEZONE。
示例: 使用 RECEIVED 列的 UTC 时间戳记将记录插入 IN_TRAY 表中。
INSERT INTO IN_TRAY VALUES (
CURRENT TIMESTAMP - CURRENT TIMEZONE,
:source,
:subject,
:notetext )