2013-02-13 3 views
2

Я пытаюсь сделать вставки в Postgres 8.4.13Невозможно ввести дату в поле Postgres с типом данных reltime

insert into my_table (id, hour_memo) values (1,'17:30:00.000000 +01:00:00'); 

hour_memo является «reltime тип данных»

Во время выполнения вставки Задача У меня есть эта проблема:

ERROR: invalid input syntax for type reltime: "17:30:00.000000 +01:00:00" 

У меня нет абсолютно никакой идеи о том, как это сделать?

+1

Почему вы решили использовать тип данных «reltime»? В документации явно сказано: «Типы abstime и reltime - это более низкие типы точности, которые используются внутри. Вам не рекомендуется использовать эти типы в приложениях; эти внутренние типы могут исчезнуть в будущем выпуске. ' –

+1

Хотя комментарий @depesz правильный, это не повод для того, чтобы опросить вопрос (кто бы это ни сделал), поскольку полезно точно указать, что этот тип не должен использоваться. –

ответ

2

Ответ заключается в том, что функция reltime не поддерживает часовые пояса, поэтому вещь «+01 ...» нарушает ее. Тем не менее - использование типа reltime - плохая идея, и его следует заменить некоторым обычным типом.