设为首页 - 加入收藏 PHP编程网 - PHP站长网 (http://www.52php.cn)- 电商,百科,编程,业界,移动互联,5G,云计算,站长网!
热搜: 娱乐 服务 百度 专业
当前位置: 首页 > 站长百科 > 正文

在Oracle中更改TIMESTAMP WITH TIMEZONE的时区组件

发布时间:2021-01-16 16:15 所属栏目:[站长百科] 来源:网络整理
导读:我有一些数据存储在Oracle的TIMESTAMP(6)WITH TIMEZONE列中,但它存储在错误的时区中.按照惯例,数据库中的所有时间戳必须以UTC格式存储,但此数据不正确地保留为EDT.实际值等于正确的UTC值;问题只是它存储为19-JUN-12 12.20.42.000000000 PM AMERICA / NEW_Y

我有一些数据存储在Oracle的TIMESTAMP(6)WITH TIMEZONE列中,但它存储在错误的时区中.按照惯例,数据库中的所有时间戳必须以UTC格式存储,但此数据不正确地保留为EDT.实际值等于正确的UTC值;问题只是它存储为19-JUN-12 12.20.42.000000000 PM AMERICA / NEW_YORK,而应该是19-JUN-12 16.20.42.000000000 PM UTC. Oracle有什么方法可以改变这个吗?

解决方法

您真的需要更改存储在数据库中的数据吗?通常,仅转换到不同的时区进行显示就足够了,即

SELECT <<your_timestamp_column>> AT TIME ZONE 'UTC'
  FROM <<your table>>

当然,如果你愿意,你也可以

UPDATE <<your table>>
   SET <<your timestamp column>> = <<your timestamp column>> AT TIME ZONE 'UTC'

改变所有数据.

【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

推荐文章
热点阅读