oracle - Oracle PL/SQL 如何在巴黎打发时间?
问题描述
在欧洲/巴黎(包括夏季/冬季时间)始终获得正确时间的最佳方式是什么?
到目前为止,我正在使用以下查询:
select FROM_TZ(CAST(Sysdate AS TIMESTAMP), 'Europe/Paris') from dual
它在以前的服务器中运行良好。但是,我们已经改变了我们的数据库服务器,现在我们得到了一个小时的差异。
有什么方法可以在巴黎始终获得正确的时间?
谢谢。
解决方案
SYSDATE
以数据库服务器操作系统的时区返回。当您运行时FROM_TZ(CAST(Sysdate AS TIMESTAMP), 'Europe/Paris')
,您将时区“附加”Europe/Paris
到 SYSDATE。
因此,FROM_TZ(CAST(Sysdate AS TIMESTAMP), 'Europe/Paris')
仅当数据库服务器操作系统的时区为 时才正确Europe/Paris
。
尝试SYSTIMESTAMP AT TIME ZONE 'Europe/Paris'
然后结果总是正确的,因为SYSTIMESTAMP
返回一个TIMESTAMP WITH TIME ZONE
值并且时区已正确转换。
推荐阅读
- c++ - 我需要一些帮助来创建某种形状/图案
- r - 如何在 Windows 中创建现有 R Shiny 应用程序的 docker 映像?
- scroll - 在 VSCode 中执行编辑器滚动命令
- angular - Angular - 如何在没有根组件的情况下加载组件?
- python - python bigquery 库 DB-API 接口如何支持 WHERE IN 或 WHERE ANY 子句
- c# - 如何将 Kendo 下拉列表转换为 Kendo 多选
- c++ - make 找不到 initFile 使用的头文件
- codenameone - 代号一个工具栏侧边菜单问题
- ruby-on-rails - 无需请求即可获取 Rails 应用程序域名
- android - 检测退款的托管应用内购买android IAP 2.0.3