On Dec8, 2010, at 11:35 , Dmitriy Igrishin wrote:
> Is it guaranteed that name of array types in pg_type system
> catalog will always be prefixed by underscore or this convention
> can be changed in future ?

What's the advantage of letting your code depend on this? 

Within SQL, I suggest you write <type>[] to denote <type>'s array type. In the 
catalog, each pg_type row contains a references the corresponding array type 
(by OID) in the field "typarray".

BTW, when querying pg_type, instead of adding another join to pg_type to get 
the array type's name, you can simply cast the "typarray" field to "regtype". 
That way, should the array type happen to lie in a schema not in your 
search_path, the name will even be correctly schema-qualified. (In fact, it's 
not the cast which does the translation but rather the implicit conversion from 
regtype to cstring that happens when the result is transferred to the client. 
For further information, you might want to check out the documentation of the 
various reg* types provided by postgres).

Hope that helps,
Florian Pflug


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to