Re: ENUM type

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Jim C(dot) Nasby" <decibel(at)decibel(dot)org>, Jochem van Dieten <jochemd(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: ENUM type
Date: 2005-07-27 15:30:10
Message-ID: 42E7A882.5020900@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-advocacy pgsql-hackers

Tom Lane wrote:

>"Jim C. Nasby" <decibel(at)decibel(dot)org> writes:
>
>
>>... what I was wondering about is creating a
>>'type' that is a rollup for:
>>
>>
>
>
>
>>- create parent table with int id field and text and indexes
>>- add RI to base table
>>- add triggers/views/rules/other glue to make the id field hidden and
>> transparent to users in normal uses
>>
>>
>
>Given the difficulties we've had with SERIAL columns, this seems much
>less than trivial :-(. I'd be interested to see a good solution ---
>I suspect it needs one or two ideas we haven't had yet.
>
>In the meantime, I agree with Andrew's reply that the best stopgap is to
>invent a bespoke datatype for each required ENUM set, with input and
>output functions that have the list of values hardwired in.
>
>
>
>

:-)

Can you expand a bit on how it might work? It's not totally clear to me
:-) Can we use an incomplete type as a parameter for anything except a
C function? Maybe we could do it with a single C function that would
retrieve the values from the catalog (extra col in pg_type?) and build
(and cache) the translation tables.

This could be an excellent intern project, BTW.

cheers

andrew

In response to

Browse pgsql-advocacy by date

  From Date Subject
Next Message Josh Berkus 2005-07-27 16:40:27 Re: ENUM type
Previous Message Alexey Borzov 2005-07-27 13:08:40 Re: [HACKERS] Enticing interns to PostgreSQL

Browse pgsql-hackers by date

  From Date Subject
Next Message Josh Berkus 2005-07-27 16:40:27 Re: ENUM type
Previous Message Bruno Wolff III 2005-07-27 15:26:44 Re: Interesting COPY edge case...