Re: Validity check in to_date?
От | Christoph Haller |
---|---|
Тема | Re: Validity check in to_date? |
Дата | |
Msg-id | 200312020927.KAA17321@rodos обсуждение исходный текст |
Ответ на | Validity check in to_date? ("Alexander M. Pravking" <fduch@antar.bryansk.ru>) |
Ответы |
Re: Validity check in to_date?
Re: Validity check in to_date? |
Список | pgsql-sql |
> > I just discovered that to_date() function does not check if supplied > date is correct, giving surprising (at least for me) results: > > fduch=# SELECT to_date('31.11.2003', 'DD.MM.YYYY'); > to_date > ------------ > 2003-12-01 > > or even > > fduch=# SELECT to_date('123.45.2003', 'DD.MM.YYYY'); > to_date > ------------ > 2007-01-03 > > to_timestamp() seems to work the same way. It's probably useful sometimes, > but not in my case... Is it how it supposed to work? > If so, how can I do such a validity check? > If not, has something changed in 7.4? > > In any case, I have to find a workaround now and will appreciate any help. > > > fduch=# SELECT version(); > version > --------------------------------------------------------------------- > PostgreSQL 7.3.4 on i386-portbld-freebsd4.8, compiled by GCC 2.95.4 > > > -- > Fduch M. Pravking > As far as I know these results are correct in terms of the underlying C-library function mktime(). This function is intended to be used when adding/subtracting intervals from a given timestamp. I don't know of any postgres function doing the check you're looking for. But I can't believe this is the first time this topic is brought up. You may search the archives on "date plausibility" are related terms. HTH Regards, Christoph
В списке pgsql-sql по дате отправления: