Обсуждение: User-defined types
Anyone know of a quick and dirty query that can retrieve the various type definitions ? I am looking to retrieve the schema-equivalent representation of a custom (user-defined) types.
\dT
-Daniel
-Daniel
On 4/7/06, codeWarrior <gpatnude@hotmail.com> wrote:
Anyone know of a quick and dirty query that can retrieve the various type
definitions ? I am looking to retrieve the schema-equivalent representation
of a custom (user-defined) types.
---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly
"codeWarrior" <gpatnude@hotmail.com> writes:
> Anyone know of a quick and dirty query that can retrieve the various type
> definitions ? I am looking to retrieve the schema-equivalent representation
> of a custom (user-defined) types.
Invoking "pg_dump -s" is by far the most future-proof approach.
regards, tom lane
I figured it out....
BTW: I was thinking more along the lines of:
SELECT PT.*, PA.* FROM pg_attribute PA
JOIN pg_type PT ON PA.attrelid = PT.typrelid
JOIN pg_class PC ON PC.oid = PA.attrelid
WHERE PT.typnamespace = 2200 AND PA.attnum > 0 AND PC.relkind IN ('r', 'c',
'v');
Perhaps this should be made into a view in the information_schema.....
Regards,
Gregory P. Patnude
Vice President - Applications & Innovations Group
iDynaTECH, Inc
665 North Riverpoint Blvd
Spokane, WA 99202
(509) 343-3104 [voice]
(208) 691-6198 [cellular]
http://www.idynatech.com
"Tom Lane" <tgl@sss.pgh.pa.us> wrote in message
news:15086.1144434800@sss.pgh.pa.us...
> "codeWarrior" <gpatnude@hotmail.com> writes:
>> Anyone know of a quick and dirty query that can retrieve the various type
>> definitions ? I am looking to retrieve the schema-equivalent
>> representation
>> of a custom (user-defined) types.
>
> Invoking "pg_dump -s" is by far the most future-proof approach.
>
> regards, tom lane
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>
"codeWarrior" <gpatnude@hotmail.com> writes:
> BTW: I was thinking more along the lines of:
> SELECT PT.*, PA.* FROM pg_attribute PA
> JOIN pg_type PT ON PA.attrelid = PT.typrelid
> JOIN pg_class PC ON PC.oid = PA.attrelid
> WHERE PT.typnamespace = 2200 AND PA.attnum > 0 AND PC.relkind IN ('r', 'c',
> 'v');
> Perhaps this should be made into a view in the information_schema.....
It seems like the COLUMN_UDT_USAGE view ought to handle this ...
except perhaps that COLUMN_UDT_USAGE for some reason substitutes the
underlying type if the column type is a domain. I can't see the
justification for that --- Peter, what part of the spec led you to do
it that way? There is probably more than one way to define the spec's
notion of "user-defined types" in terms of Postgres notions, but I
don't see where you got this particular definition.
regards, tom lane