【问题标题】:Which time zone is used by java.sql.Timestamp(long)?java.sql.Timestamp(long) 使用哪个时区?
【发布时间】:2014-11-25 05:08:05
【问题描述】:

在通过仅指定constructor 中的毫秒来构建 SQL 时间戳时,将使用哪个时区?以及如何选择将UTC或本地时区写入TIMESTAMP(6) WITH LOCAL TIME ZONE类型的Oracle数据库列?

【问题讨论】:

    标签: java sql oracle timestamp-with-timezone


    【解决方案1】:

    时间戳(int year, int month, int date, int hour, int minute, int second, int nano)

    时间戳(长时间) - 时间 - 自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数。负数是 1970 年 1 月 1 日 00:00:00 GMT 之前的毫秒数。

    时间戳中没有时区

    一般而言,如果假设时区,它将是 jvm 默认值(系统默认值)

    oracle 数据类型是不同的野兽

    Timezones in SQL DATE vs java.sql.Date

    Oracle 10g Time Zone Confusion - 有 3 个时区在起作用

    使用数据库时,请使用 Calendar 或 java.sql.Date

    oracle 驱动程序(和 sql 开发人员)可以将(其智能)日期从 jvm 时区(或严格来说,会话​​时区)转换为所需的日期

    您可以更改会话时区 - alter session set time_zone...How to get UTC value for SYSDATE on Oracle

    小心你正在做的事情

    编写 10 个不同的测试用例

    这个博客也不错http://tonyhasler.wordpress.com/2010/09/04/tonys-tirade-against-timestamp-with-time-zone/

    【讨论】:

      猜你喜欢
      • 2012-06-27
      • 2019-08-07
      • 1970-01-01
      • 1970-01-01
      • 2013-10-20
      • 1970-01-01
      • 2013-05-26
      • 2018-09-26
      • 1970-01-01
      相关资源
      最近更新 更多