Re: Custom type literal conversion

Поиск
Список
Период
Сортировка
От Chris Bandy
Тема Re: Custom type literal conversion
Дата
Msg-id CAMDg7Wz6ghkU7rt7HxkqJr6t6Ls_qtoTBSuxK5srfagpHc_YVQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Custom type literal conversion  (hubert depesz lubaczewski <depesz@gmail.com>)
Список pgsql-general
On Wed, Sep 24, 2014 at 8:40 AM, hubert depesz lubaczewski <depesz@gmail.com> wrote:
On Wed, Sep 24, 2014 at 2:45 PM, Chris Bandy <bandy.chris@gmail.com> wrote:
I would like to create a new type for version strings that sorts numerically. The composite type below was quick to write and does not require superuser privileges. However, it doesn't respond to type casts the way I'd like.

Is there a way to implement this type's literal conversion without resorting to a base type?

I think you need to define casts too, but in any way - check if "semver" extension (available on pgxn) doesn't solve your problem.


Casts from what? The following is not sufficient:

=> CREATE CAST (unknown AS myversion) WITH FUNCTION myversion(unknown);
CREATE CAST
=> SELECT '1.0.9+jenkins'::myversion;
ERROR:  malformed record literal: "1.0.9+jenkins"

And cast on "record" isn't valid:

=> CREATE CAST (record AS myversion) WITH FUNCTION myversion(unknown);
ERROR:  source data type record is a pseudo-type

I know about the semver extension, but I'm interested in a solution that does not require extension/superuser access.

Thanks
-- Chris

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Why can't I select un-grouped columns when grouping by a (non-primary) unique key?
Следующее
От: Oleg Bartunov
Дата:
Сообщение: Re: JSONB spaces in text presentation