Tom Lane wrote:

Andreas Pflug <[EMAIL PROTECTED]> writes:


I noticed the new expression functionality of indices and while implementing them in pgadmin3 was wonderingnow to extract the definition from the catalog.



The best way is to use pg_get_indexdef(indexOID), same as pg_dump and
psql do.


So far for the SQL window, which will show just a plain (and hopefully nicely formatted. readable) sql query to recreate the index. Still, a verbose display of the indexes property is not possible this way, unless I parse the pg_get_indexdef output...

pg_get_indexdef converts that string to a list of nodes (not surprising), while pg_get_expr whill join these list elements with an explicit and (according to a comment, needed for partial index). Do I need to retrieve indexprs and split it myself (counting brackets) or is there a pg_xxx function that could help me (pg_get_element(indexprs, 0...n)) ?

Actually it should be read as 1 0 4 0.  The output converter for
int2vector suppresses trailing zeroes, for largely-historical reasons.

Ok, I understand that, because indkey[n>4] will deliver 0 too, and indnatts will show that 4 arguments are needed.


Regards, Andreas


---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives?

http://archives.postgresql.org

Reply via email to