Обсуждение: Can't figure out how to use now() in default for tsrange column (PG 9.2)

Поиск
Список
Период
Сортировка

Can't figure out how to use now() in default for tsrange column (PG 9.2)

От
Chris Bartlett
Дата:
I'm trying to set [now(), 2049-12-31 00:00:00) as the default for a
tsrange column (Postgres 9.2), but can't figure out how to do it. I'm
either getting syntax errors or now() is being evaluated, so that the
default becomes something like [2012-07-14 14:04:35, 2049-12-31
00:00:00), which is not what I want. Can anyone point me in the right
direction, please?

Re: Can't figure out how to use now() in default for tsrange column (PG 9.2)

От
Tom Lane
Дата:
Chris Bartlett <c.bartlett@paradise.net.nz> writes:
> I'm trying to set [now(), 2049-12-31 00:00:00) as the default for a
> tsrange column (Postgres 9.2), but can't figure out how to do it. I'm
> either getting syntax errors or now() is being evaluated, so that the
> default becomes something like [2012-07-14 14:04:35, 2049-12-31
> 00:00:00), which is not what I want. Can anyone point me in the right
> direction, please?

I think you'd need to use the constructor function, ie

    default tsrange(now(), '2049-12-31 00:00:00')

BTW, that second value looks a whole lot like a poorly thought out
substitute for 'infinity' ...

            regards, tom lane