欢迎投稿

今日深度:

Oracle TIMESTAMP的处理,oracletimestamp

Oracle TIMESTAMP的处理,oracletimestamp


public class Test {
private static final SimpleDateFormat FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:dd");

public static void main(String[] args) throws SQLException {
oracle.sql.TIMESTAMP temp = new oracle.sql.TIMESTAMP();

System.out.println(convertOrclTimestemp2String(temp, null));
}

public static String convertOrclTimestemp2String(oracle.sql.TIMESTAMP temp, String pattern) throws SQLException {
java.sql.Timestamp tt = (java.sql.Timestamp) temp.toJdbc();
if(StringUtils.isNotBlank(pattern)) {
FORMAT.applyPattern(pattern);
}
return FORMAT.format(new Date(tt.getTime()));
}

}


输出结果:1970-01-01 00:00:01


oracle的timestamp显示格式问题

alter session set nls_timestamp_format='yyyy-mm-dd hh24:mi:ss';
SQL> create table wcy_t1(f1 timestamp);

Table created.

SQL> insert into wcy_t1 values(systimestamp);

1 row created.

SQL> commit;

Commit complete.
SQL> select * from wcy_t1;

F1
---------------------------------------------------------------------------
2011-05-18 16:46:06
 

oracle中timestamp与date类型的不同

此类型由 java.util.Date 和单独的毫微秒值组成。只有整数秒才会存储在 java.util.Date 组件中。小数秒(毫微秒)是独立存在的。传递不是 java.sql.Timestamp 实例的对象时,Timestamp.equals(Object) 方法永远不会返回 true,因为日期的毫微秒组件是未知的。因此,相对于 java.util.Date.equals(Object) 方法而言,Timestamp.equals(Object) 方法是不对称的。此外,hashcode 方法使用底层 java.util.Date 实现并因此在其计算中不包括毫微秒。

鉴于 Timestamp 类和上述 java.util.Date 类之间的不同,建议代码一般不要将 Timestamp 值视为 java.util.Date 的实例。Timestamp 和 java.util.Date 之间的继承关系实际上指的是实现继承,而不是类型继承。
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2201.html NewsArticle Oracle TIMESTAMP的处理,oracletimestamp public class Test { private static final SimpleDateFormat FORMAT = new SimpleDateFormat(yyyy-MM-dd HH:mm:dd); public static void main(String[] args) throws SQLException { oracle.sql.TIMESTAMP temp...
相关文章
    暂无相关文章
评论暂时关闭