typmod for custom type

Поиск
Список
Период
Сортировка
От James Harper
Тема typmod for custom type
Дата
Msg-id 6035A0D088A63A46850C3988ED045A4B6F3A615D@BITCOM1.int.sbss.com.au
обсуждение исходный текст
Ответы Re: typmod for custom type  (Adrian Klaver <adrian.klaver@gmail.com>)
Re: typmod for custom type  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
I have created a custom type called my_numeric, which is roughly the same as the existing numeric type. I have declared
in,out, typmod_in, and typmod_out functions. I create a table like: 

CREATE TABLE test (col1 my_numeric(6, 3));

And then do \d test and can see that col1 is declared as (6, 3), which I think confirms that my typmod_in and
typmod_outfunction are correct. 

But when I do:

INSERT INTO test VALUES ('12.34');

It behaves as though the typmod parameter to my in function (PG_GETARG_INT32(2)) is passed in as -1. The docs
(http://www.postgresql.org/docs/9.3/static/sql-createtype.html)says of the arguments that "the third is the typmod of
thedestination column, if known (-1 will be passed if not).". 

Am I doing something wrong? Don't I need to know the typmod of the destination column so I can confirm that the format
ofthe string being passed in conforms to the type modifier specified (eg so I can reject '1234.5678' for col1 with an
overflowerror)? 

Thanks

James



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

Предыдущее
От: John R Pierce
Дата:
Сообщение: Re: Restore postgresql data directory to tablespace on new host? Or swap tablespaces?
Следующее
От: Rémi Cura
Дата:
Сообщение: Toast and slice of toast