当前位置: 首页 > 知识库问答 >
问题:

如何在org.hibernate.type.timestampType和Oracle sysdate之间转换?

武友樵
2023-03-14

我有一个列是使用org.hibernate.type.timestamptype在hibernate中映射的。如何使用本机Oracle SQL根据Oracle时间戳存储和检索这些值?

该列映射为number(10)。我尝试使用我为Unix时间戳找到的一些公式,但它们似乎没有产生正确的结果。

我想用validityauditstrategy使用Hibernate Envers。我遇到了麻烦,因为我正在将Envers应用到没有审计历史记录的现有记录的数据库中。我要做的是一次性插入审计数据,使用Oraclesysdate作为时间戳。

共有1个答案

费星晖
2023-03-14

我不确定您的1579730473525是什么格式的,所以我猜了一下,用substr取前10位,结果是一个合理的2020年日期,如下所示。

SELECT TO_DATE('1970-01-01','YYYY-MM-DD') +
NUMTODSINTERVAL(TO_NUMBER(SUBSTR('1579730473525',1,10)), 'SECOND') FROM dual;

退货

22/01/2020 22:01:13              

然后,为了获得时间戳,我添加了最后4个数字。

SELECT to_char(TO_DATE('1970-01-01','YYYY-MM-DD') +
NUMTODSINTERVAL(TO_NUMBER(SUBSTR('1579730473525',1,10)), 'SECOND') ,'YYYY-MM-DD hh:mm:ss') ||'.'||SUBSTR('1579730473525',10,4)
FROM dual;
2020-01-22 10:01:13.3525         
SELECT TO_TIMESTAMP(TO_CHAR(TO_DATE('1970-01-01','YYYY-MM-DD') +
NUMTODSINTERVAL(TO_NUMBER(SUBSTR('1579730473525',1,10)), 'SECOND') ,'YYYY-MM-DD hh:mi:ss') ||'.'||SUBSTR('1579730473525',10,4),'YYYY-MM-DD hh:mi:ss:ff')
FROM dual;

只是一个提示:如果省略了格式设置,请记下NLS参数NLS_TIMESTAMP_FORMAT以防出现格式设置问题。

 类似资料:
  • 问题内容: 在Java 8和Java 8 之间进行转换的最佳方法是什么? 问题答案: 从转换为: 转换回来比较简单:

  • 问题内容: 这个问题已经在这里有了答案 : 如何将LocalDate转换为SQL Date Java? (3个答案) 5年前关闭。 在和(Java8)之间进行转换的正确方法是什么? 问题答案: 的Java 8版本(及更高版本)已内置对的支持,包括和。 转换为可以使用 并转换为: 时区: 该类型不存储时区信息,而存储。因此,使用上述转换时,结果取决于系统的默认时区(如注释中所指出)。 如果您不想依赖

  • 问题内容: 我需要将图像从CMYK转换为RGB-不必再次返回,但是,嘿,如果可以的话… 随着ColdFusion 8的发布,我们获得了CFImage标签,但是它不支持这种转换。而且Image.cfc或Alagad的Image Component 也不会。 但是,在Java中应该可以实现。我们可以通过CF加以利用。例如,以下是创建Java线程以使进程休眠的方法: 我猜想可以使用类似的方法来利用Jav

  • 问题内容: 有谁知道如何将字符串从ISO-8859-1转换为UTF-8并重新转换为Java? 我从网络上获取一个字符串并将其保存在RMS(J2ME)中,但是我想保留特殊字符并从RMS中获取字符串,但要使用ISO-8859-1编码。我该怎么做呢? 问题答案: 通常,你无法执行此操作。UTF-8能够编码任何Unicode代码点。ISO-8859-1只能处理其中的一小部分。因此,从ISO-8859-1转

  • 问题内容: 我对图像处理非常陌生。我有一个PNG图片(使用读取),可以在调用它时产生。 现在,我想将其转换为以下模型之一: TYPE_USHORT_GRAY TYPE_3BYTE_BGR TYPE_BYTE_GRAY TYPE_INT_RGB TYPE_INT_ARGB 需要执行上述操作以使用仅识别上述类型的库进一步处理图像。 如何从颜色模型转换为其他模型? 任何帮助/指针将不胜感激。如果没有任何

  • 我不想使用 库,因为我正在处理的项目需要文书工作来引入依赖项。如果我能在没有第三方库的情况下实现这一目标,我会更高兴。 我很难在CET和UTC之间转换日期,因为日期是夏时制。这与我预期的相差一个小时: CET比UTC提前一小时,夏季提前2小时。因此,我预计中欧在盛夏的10点30分将达到协调世界时的8点30分。 功能是: 我使用两个时区信息对象: