我在其中一个表中声明了一个类型为“time without zone”的字段。问题是时间(通过JDBC)以毫秒存储,这是我不想要的。
09:55:10.137
我们只需要秒(为了使应用程序兼容并在基于DB2的环境中运行,其中时间仅存储几秒)
09:55:10
我可以改变那个领域吗?
感谢stackoverflow
答案 0 :(得分:3)
documentation中对此进行了描述。没有时区的时间戳可以指定为:
timestamp [ (p) ] [ without time zone ]
其中p
需要精确度。
引用文档:
时间,时间戳和间隔接受可选的精度值p 它指定了保留的小数位数 秒场。默认情况下,精度没有明确的界限。 对于时间戳和间隔,p的允许范围是0到6 类型。
测试:
drop table if exists test;
-- zero fractional digits after seconds
create table test(mytime timestamp(0) without time zone);
-- now() returns current time including microseconds
insert into test values(now());
select * from test;
----
2014-06-05 10:42:11