繁体   English   中英

从Java时间戳转换为Oracle时间戳

[英]Converting from Java Timestamp to Oracle Timestamp

在我的Java项目中,我试图创建一个时间戳,该时间戳稍后将存储在数据库(Oracle数据库)中。 经过多次试验,我发现我的Java代码生成的时间戳具有以下格式:

2017-06-20 14:38:12.296

Oracle中的时间戳格式如下:

20-JUN-19 02.38.55.059000000 PM

有没有办法将时间戳的java格式转换为oracle的格式?

我创建时间戳的代码:

Date date = new Date();
long time = date.getTime();
Timestamp timeStamp = new Timestamp(time);

我已经尝试了很多时间戳转换,但是没有用。

要添加来自QuaternionsRock的答案,因为它未经测试,所以您始终可以使用DateFormat

从他的链接中,您可以看到以下示例,我可以使用以下日期进行测试,例如19年6月20日06.06.05.112 PM。

DateFormat df = new SimpleDateFormat("dd-MMM-yy HH.mm.ss.SSS a");
Date date = df.parse(oracleTS);
Timestamp ts = new Timestamp(date.getTime());

与QuaternionsRock链接中发布的内容相反,DateFormat字符串中不需要两个a

这里

java.sql.Timestamp javaTimeStamp = oracleTimeStamp.timestampValue();

我不能说我已经测试过了,但是对我来说似乎合乎逻辑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM