使用 java 而不是 sql 获取当前数据库 sysdate

Posted

技术标签:

【中文标题】使用 java 而不是 sql 获取当前数据库 sysdate【英文标题】:get current database sysdate using java instead of sql 【发布时间】:2012-12-19 12:35:17 【问题描述】:

使用这个查询可以得到oracle数据库的当前系统日期,

SELECT sysdate FROM dual;

select (sysdate - to_date('1970-01-01 00:00:00','YYYY-MM-DD HH24:MI:SS')) * 86400 unix_ts from dual;

分别返回 19-DEC-12 和 1355949236.999999999999999999999999999998 格式。

如果我需要它从 java 的角度以 unix_time 格式获取它怎么办?

1) 库名是什么?

例如:

import java.util.Date;
import java.text.SimpleDateFormat;
import java.text.DateFormat;
import com.portal.pcm.fields.TmFldRefundIndLastModDate;

2) 怎么称呼?

例如:

if(sysdate >= a_date_which_is_in_unix_time_format)...

谢谢。

【问题讨论】:

【参考方案1】:

我想你想要:

long seconds = new java.util.Date().getTime() / 1000;

请参阅Date#getTime() 的文档

【讨论】:

感谢 msandiford。 /1000 将其更改回 sec,这将获得自 1970 年 1 月 1 日 00:00:00 GMT(unix 时间)=) 以来的秒数。

以上是关于使用 java 而不是 sql 获取当前数据库 sysdate的主要内容,如果未能解决你的问题,请参考以下文章

获取Java中的当前时间(以毫秒为单位)(只是时间,而不是日期)

怎么用sql语句获取每一组的第一条记录(包括所有字段,不是单个字段)

Java + BigQuerie 如何获取正确的 JSON 而不是一些 FieldValues 列表?

SQL时间函数

Blazor WASM 使用 Cosmos DB 而不是 SQL 来获取身份

获取 ajax 请求以更新 SQL 表中的列