Re: to_date_valid()

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: to_date_valid()
Дата
Msg-id CAFj8pRChHJgZUzcoe6avYf=7yuOgX=rPqDOdahUGaugdhkSrMw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: to_date_valid()  (Andreas 'ads' Scherbaum <adsmail@wars-nicht.de>)
Ответы Re: to_date_valid()  (Andreas 'ads' Scherbaum <adsmail@wars-nicht.de>)
Список pgsql-hackers


2016-07-04 18:24 GMT+02:00 Andreas 'ads' Scherbaum <adsmail@wars-nicht.de>:
On 04.07.2016 05:51, Pavel Stehule wrote:


2016-07-04 5:19 GMT+02:00 Pavel Stehule <pavel.stehule@gmail.com
<mailto:pavel.stehule@gmail.com>>:



    2016-07-04 4:25 GMT+02:00 Craig Ringer <craig@2ndquadrant.com
    <mailto:craig@2ndquadrant.com>>:

        On 3 July 2016 at 09:32, Euler Taveira <euler@timbira.com.br
        <mailto:euler@timbira.com.br>> wrote:

            On 02-07-2016 22 <tel:02-07-2016%2022>:04, Andreas 'ads'
            Scherbaum wrote:
            > The attached patch adds a new function "to_date_valid()" which will
            > validate the date and return an error if the input and output date do
            > not match. Tests included, documentation update as well.
            >
            Why don't you add a third parameter (say, validate = true |
            false)
            instead of creating another function? The new parameter
            could default to
            false to not break compatibility.


        because


            SELECT to_date('blah', 'pattern', true)

        is less clear to read than

            SELECT to_date_valid('blah', 'pattern')

        and offers no advantage. It's likely faster to use a separate
        function too.


    personally I prefer first variant - this is same function with
    stronger check.


Currently probably we have not two similar function - one  fault
tolerant and second stricter. There is only one example of similar
behave - parse_ident with "strict" option.

The three parameters are ok still - so I don't see a reason why we have
to implement new function. If you need to emphasize the fact so behave
should be strict, you can use named parameters

select to_date('blah', 'patter', strict => true)

The new function is not "strict", it just adds a validation step:

I understand - I know, so this has zero relation to function flag STRICT

I don't know if the name "strict" is best, but the name "validate" is not good too. Current to_date does some validations too.

Regards

Pavel
 

postgres=# select to_date_valid(NULL, NULL);
 to_date_valid
---------------



(1 row)

--
                                Andreas 'ads' Scherbaum
German PostgreSQL User Group
European PostgreSQL User Group - Board of Directors
Volunteer Regional Contact, Germany - PostgreSQL Project

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andreas 'ads' Scherbaum
Дата:
Сообщение: Re: to_date_valid()
Следующее
От: Andrew Borodin
Дата:
Сообщение: Re: Re: GiST optimizing memmoves in gistplacetopage for fixed-size updates [PoC]