Re: RfD: more powerful "any" types

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: RfD: more powerful "any" types
Дата
Msg-id 162867790909091257t319335adlccc6c71123cc31f3@mail.gmail.com
обсуждение исходный текст
Ответ на Re: RfD: more powerful "any" types  (Alvaro Herrera <alvherre@commandprompt.com>)
Ответы Re: RfD: more powerful "any" types  (Hannu Krosing <hannu@krosing.net>)
Список pgsql-hackers
2009/9/9 Alvaro Herrera <alvherre@commandprompt.com>:
> Pavel Stehule escribió:
>> 2009/9/9 Alvaro Herrera <alvherre@commandprompt.com>:
>
>> > I already published a pseudo-sprintf function in the wiki here:
>> > http://wiki.postgresql.org/wiki/Sprintf  I'm looking for something
>> > better, not just the same hacks.
>> >
>> > I don't see any good reason that the function needs to be far from core.
>>
>> what is use case? Why you need sprintf function, when you have ||
>> operator. This functionality is redundant and out of standard. What I
>> know, only MySQL has similar function.
>
> Extensive use of || turns into horrible messes quickly.  sprintf() makes
> this kind of thing much cleaner.  You could use strcat/strcpy in C too,
> but do you?  You could argue that sprintf is redundant in C, yet it
> turns out to be extremely useful.
>

Yes, I agree. But this functionality you will use only in plpgsql
language. I thing, so there could be some library that should be
separated from standard functions. It would be nice, when people
clearly understand if use some enhancing functionality or some base
sql functionality.

we could to have schema plpgsql. And there could be function subst,

then in your plpgsql proc you can call

if (...) then message := plpgsql.subst('some message:% ...', some value, ...); ....

if you would, then you can add plpgsql schema to search path.

I dislike to use name sprintf, because this or similar function isn't
real sprintf function - it doesn't use compatible format string with
sprintf function.

regards
Pavel Stehule

> One use case is using it for error messages in RAISE/USING.  Yes, I am
> aware you can use concatenation there.
>
> --
> Alvaro Herrera                                http://www.CommandPrompt.com/
> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
>


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

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: RfD: more powerful "any" types
Следующее
От: Andrew Dunstan
Дата:
Сообщение: Ragged CSV import