Re: BUG #6113: SET DATESTYLE='European' does not set datestyle output correctly

From: Bernd Helmle <mailings(at)oopsware(dot)de>
To: David Carlos Manuelda <StormByte(at)gmail(dot)com>, pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #6113: SET DATESTYLE='European' does not set datestyle output correctly
Date: 2011-07-12 11:34:52
Message-ID: 111910B9C47F9E5CA25F3F78@apophis.local
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

--On 12. Juli 2011 04:32:11 +0000 David Carlos Manuelda <StormByte(at)gmail(dot)com>
wrote:

>
> The following bug has been logged online:
>
> Bug reference: 6113
> Logged by: David Carlos Manuelda
> Email address: StormByte(at)gmail(dot)com
> PostgreSQL version: 9.0.4
> Operating system: Gentoo Linux
> Description: SET DATESTYLE='European' does not set datestyle output
> correctly
> Details:
>
> According to Doc (http://www.postgresql.org/docs/7.2/static/sql-set.html)
> there are different datestyles available to format date outputs.

This is a very outdated documentation link, you should refer to the 9.0
documentation instead:

<http://www.postgresql.org/docs/9.0/static/runtime-config-client.html#RUNTIME-CONFIG-CLIENT-FORMAT>

> But either is a bug in doc or is a bug in postgre itself, but 'European'
> does not currently do what it is intended (it does nothing actually).
>

[...]

> As you can see, SET DATESTYLE='European' just did nothing and did not change
> it from last set which was 'German', and of course, it does not even outputs
> what was expected and stated in documentation.

'European' or 'Euro' is just another way to write 'DMY' as an input format for
the date part. At least, for me it works as expected:

SET datestyle TO 'ISO, mdy';

SELECT '27.12.2011'::date;
ERROR: 22008: date/time field value out of range: "27.12.2011" at character 8
HINT: Perhaps you need a different "datestyle" setting.
LOCATION: DateTimeParseError, datetime.c:3541
STATEMENT: SELECT '27.12.2011'::date;
ERROR: date/time field value out of range: "27.12.2011"
LINE 1: SELECT '27.12.2011'::date;
^
HINT: Perhaps you need a different "datestyle" setting.

SET datestyle TO 'European';

SHOW datestyle;
DateStyle
-----------
ISO, DMY
(1 row)

SELECT '27.12.2011'::date;
date
------------
2011-12-27
(1 row)

--
Thanks

Bernd

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Daniele Varrazzo 2011-07-12 11:37:41 extract(epoch from infinity) is not 0
Previous Message Wiesiek 2011-07-12 10:52:42 BUG #6114: Bad path