Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 17/11/2009 12:15:46
- Jiff
- Membre
Bouts de code - Infos Contraintes
Salut,
je suis à la recherche de bouts de codes pour récupérer toutes les infos et contraintes des colonnes d'une base afin de les réutiliser dans l'application qui va au-dessus et éviter une éventuelle désynchronisation en manuel:
* Type du champs (int4, varchar(n), ...), également si le descripteur est un domain (c'est surtout là que ça coince),
* Contraintes "directes" (not null, >5, ...),
* Contraintes "indirectes" (celles du domain).
je n'ai pas trop le temps de m'y atteler étant donné que le dev de l'application prend tout mon temps dispo.
Merci d'avance.
Hors ligne
#2 21/11/2009 20:58:12
- gleu
- Administrateur
Re : Bouts de code - Infos Contraintes
Type du champs (int4, varchar(n), ...), également si le descripteur est un domain (c'est surtout là que ça coince)
select attname, t.typname from pg_attribute, pg_type as t, pg_class as c where relname='a' and attrelid=c.oid and attnum>0 and t.oid=atttypid;
... récupère type et domaine.
Contraintes "directes" (not null, >5, ...),
not null ==> colonne attnotnull de pg_attribute
check ==> colonnes conkey (liste des colonnes contraintes), consrc (code source de la contrainte) dans la table pg_constraint
Contraintes "indirectes" (celles du domain)
table pg_type, colonnes typdefault, typnotnull (pour les contraintes) et typbasetype (pour le type de base)
Guillaume.
Hors ligne
#3 21/11/2009 21:39:24
- Jiff
- Membre
Re : Bouts de code - Infos Contraintes
Merci,
je pense que comme mes définitions de tables sont dans un tableur, je vais utiliser ses fonctions
histoire de remplacer les domains par leurs valeurs réelles afin de faciliter la récupération des
types de champs.
Hors ligne
Pages : 1