Re: determiner les champ de clef primaire d'une

From: "Daniel Verite" <daniel(at)manitou-mail(dot)org>
To: "Laurent =?ISO-8859-15?Q?Mesur=E9?=" <laurent(dot)mesure(at)free(dot)fr>
Cc: "pgsql-fr-generale" <pgsql-fr-generale(at)postgresql(dot)org>
Subject: Re: determiner les champ de clef primaire d'une
Date: 2006-06-05 17:44:53
Message-ID: 20060605194500.20524
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Laurent Mesuré wrote:

> >> ayant une table je voudrais extraire la liste des champs de la clef
> >> primaire.
> >>
> >> j'"essaye avec les tables pg_class,pg_index, mais du coup je me
> >> trouve confronté au type int2vector. Du coup, je suis sur qu'il y a
> >> surement une methode plus simple, mais je ne la trouve pas.

Pour le nombre des champs, c'est pg_index.indnatts
Pour aller chercher les champs un par un, il y a une fonction
pg_catalog.pg_get_indexdef qui prend en argument le numéro de colonne
en commençant par 1, et qui renvoie le nom du champ, en gros.
Voir http://docs.postgresqlfr.org/8.1/functions-info.html

Et sinon dans psql, il est possible de faire
\set ECHO_HIDDEN pour voir les requêtes construites par psql pour
répondre aux commandes du type \d
C'est très utile pour apprendre des choses sur tout ce qui est
relatif au catalogue des données.

--
Daniel
PostgreSQL-powered mail user agent and storage: http://www.manitou-mail.org

In response to

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Nabil Servais 2006-06-06 09:33:58 Re: problème de configuration
Previous Message Laurent Mesuré 2006-06-05 17:06:30 Re: determiner les champ de clef primaire d'une