Re: User-defined typle similar to char(length) varchar(length)

Поиск
Список
Период
Сортировка
От elein
Тема Re: User-defined typle similar to char(length) varchar(length)
Дата
Msg-id 20060804003720.GF9697@varlena.com
обсуждение исходный текст
Ответ на Re: User-defined typle similar to char(length) varchar(length)  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: User-defined typle similar to char(length) varchar(length)
Список pgsql-hackers
On Thu, Aug 03, 2006 at 05:04:47PM -0400, Tom Lane wrote:
> Martijn van Oosterhout <kleptog@svana.org> writes:
> > On Thu, Aug 03, 2006 at 04:18:53PM -0400, Tom Lane wrote:
> >> I think we could legislate that the stored typmod is the same as what
> >> the user sees (and can't be negative).  The fact that it's different
> >> for some of the built-in types is a historical artifact that I'd love
> >> to get rid of.
> 
> > But that makes NUMERIC(x,y) impossible to represent.
> 
> Well, we have to special-case INTERVAL anyway (because its cramming some
> truly bizarre things into typmod), and it wouldn't bother me too much to
> special-case NUMERIC as well.
> 
> Another option is to agree on some simple rule for cramming two values
> into one typmod, like first one in the low half and second in the high
> half, and then user types could have either one or two typmod values ---
> but I can imagine some pretty bizarre behavior if the type is expecting
> one value and you enter two or vice versa.  NUMERIC can finesse this
> because the default for scale is zero, but in the general case that
> wouldn't work so well.
> 
> Does anyone have examples of real user-defined types that would need two
> fields?  If not it may not be worth spending time on.

I can think of histograms as a data type which may take more than one argument,
maybe even an array for boundary information.  I think the direction *in the
long term* should be to allow multiple arguments (as a ROW type?) and other
base or complex types as arguments.  The value would be a type itself and
the datatype must do the right thing regarding it.  This may not be practical
for short-term, but would open up initialization parameters for user-defined
typed.

--elein

> 
>             regards, tom lane
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 6: explain analyze is your friend
> 


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

Предыдущее
От: Joe Conway
Дата:
Сообщение: Re: [BUGS] Patch to allow C extension modules to initialize/finish
Следующее
От: Kevin Brown
Дата:
Сообщение: Re: [PATCHES] LWLock statistics collector