Wee*_*oze 0 java oracle date oracle-sqldeveloper
我的应用程序使用的是Oracle数据库,其中一个表包含一个日期列.在SQLDeveloper中进行查询时,我需要添加以下行来获取日期+小时
alter session set nls_date_format = 'DD/MM/YYYY HH24:MI:SS';
Run Code Online (Sandbox Code Playgroud)
如果我不使用它,我只会看到日期 25/11/2016
当我从我的JAVA代码执行查询时,我没有上面的行,因此每个日期都以格式返回 DD/MM/YY
JAVA
String query = "SELECT date from SCHEMA.table";
ResultSet rs = null;
try {
connection = ConnectionFactory.getConnection(Database.ORACLE);
preparedStatement = connection.prepareStatement(query);
rs = preparedStatement.executeQuery();
while (rs.next()) {
java.sql.Date dateDB = rs.getDate("date");
}
catch(SQLException e){
//error
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能得到小时的日期?我应该添加alter session ...到每个查询?
描述部分java.sql.Date:
为了符合SQL DATE的定义,java.sql.Date实例包含的毫秒值必须通过将小时,分钟,秒和毫秒设置为零来"标准化"
可能java.sql.Timestamp是正确的类型,其中包括时间组件:
...
java.sql.Timestamp dateDB = rs.getTimestamp("date");
...
Run Code Online (Sandbox Code Playgroud)