2013-03-20 13 views
0

Ruby和postgres问题:我想将Ruby脚本中的日期插入到postgres数据库中。 数据库日期格式为:2013-03-13 17:08:51.207184-04 in postgres。顺便说一下,Postgres数据库的日期字段中的“51.207184-04”是什么?什么是在Ruby中Time.now日期之后的“-400”,“-500”,并且日期与postgres日期字段兼容?

我想从ruby写入postgres中日期列的数据。我假设我需要使用Time.now,但我不知道那是什么?与日期时间结束时的-400或-500有什么关系?

的Postgres数据库字段是:timestamp without time zone NOT NULL

+0

我强烈怀疑“-0400”是-4小时的UTC偏移量。请说*完全*数据库中的字段类型。 – 2013-03-20 17:21:53

+0

我想''51.207184''是秒+微秒,''-04''是时区,''-400'' /''-500''是用另一种格式表示的时区。 – redShadow 2013-03-20 17:22:32

+0

我更新了上面的内容并给了确切的数据库字段..谢谢。 – Doublespeed 2013-03-20 17:34:28

回答

1

在这两种情况下,最后一位是一个时区,表现为相对于UTC小时。

我相信所显示的PG时间戳是UTC时间4小时后的2013-03-13 17h 08m 51.207184s(但我并不熟悉postgres的字段格式);在红宝石-0400末尾的Time.now意味着相同,而-0500意味着落后5个小时。

+0

为了保持您自己的理智,通常最好存储没有偏移量的时间,即使用UTC。根据需要转换显示。 – tadman 2013-03-20 17:38:14

相关问题