Re: to_char incompatibility - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: to_char incompatibility
Date
Msg-id 200801161128.13257.peter_e@gmx.net
Whole thread Raw
In response to Re: to_char incompatibility  ("Roberts, Jon" <Jon.Roberts@asurion.com>)
Responses Re: to_char incompatibility  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: to_char incompatibility  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
Am Donnerstag, 10. Januar 2008 schrieb Roberts, Jon:
> > On PostgreSQL:
> >
> > select to_date('31-DEC-200700:00:00', 'dd-mon-yyyy hh24:mi:ss');
> >    to_date
> > --------------
> >  200700-12-31

> Oracle removes all white spaces in the date you pass in and the date
> format.

I don't have a strong opinion on the whitespace handling, but then I wonder

1. If I put four YYYY, why does it create a six-digit year?

2. If it does create a six digit year, the rest of the pattern doesn't match 
anymore, so it should error.

A further example shows that to_date seems to have little error checking 
altogether:

select to_date('17.12.1978', 'YYYY-MM-DD'); to_date
------------0017-12-19

That can't possibly be a good idea, in the interest of the robustness of 
applications built on this.

select to_date('whatever', 'foobar');   to_date
---------------0001-01-01 BC

Yah.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/


pgsql-hackers by date:

Previous
From: Jens-Wolfhard Schicke
Date:
Subject: Re: Array behavior oddities
Next
From: "Heikki Linnakangas"
Date:
Subject: Re: Postgresql Materialized views