IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

[debutant]detection des contraintes


Sujet :

PostgreSQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut [debutant]detection des contraintes
    bonjour
    je débute sous Postgres et php.
    je souhaite réaliser un 'viewer' de base de données le plus portable possible.
    j'arrive actuellement à determiner toutes les tables d'une base, tous les champs de toutes les tables et leur contenus.......mon code est très portable puisque seul change les paramètres de connections pour les bases sous postgres.
    Maintenant je voudrai dans le cas ou je demande d'afficher les valeurs de 2 tables :
    ex tables 1 et la tables 2 imaginons que la table 2 contiennent en clé étrangère la clé primaire de la table 1, je ne veux pas afficher deux champs qui sont en fait parfaitement identiques.
    Donc je cherche à detecter les contraintes de chaques tables , il me semble qu'il faut utiliser pg_constraint, mais je ne comprends pas comment!
    si quelqu'un peut prendre quelque minutes pour m'expliquer il aura droit à mon éternel reconnaissance
    jf

  2. #2
    Membre émérite
    Avatar de hpalpha
    Inscrit en
    Mars 2002
    Messages
    769
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 769
    Points : 2 545
    Points
    2 545
    Par défaut
    Bonjour,
    j'ai parcouru ton probleme très rapidement, et j'ai cherché dans mes archives des requetes que j'avais fait il y a quelque temps, ca ne te donne pas la réponse exacte à ta question mais en étudiant le fonctionnement, je pense que tu trouveras, c'est toujours sensiblement la meme chose :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /* Affichage des tables du schema monschema */
    SELECT c.relname
    FROM pg_catalog.pg_namespace as n INNER JOIN pg_catalog.pg_class as c ON (n.oid = c.relnamespace)
    WHERE n.nspname = 'monschema'
    AND c.relkind = 'r'::char;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    /* Affichage des champs de la table matable du schema monschema  */
    SELECT attname
    FROM pg_catalog.pg_namespace as n
    INNER JOIN pg_catalog.pg_class as c ON (n.oid = c.relnamespace)
    INNER JOIN pg_catalog.pg_attribute as a ON (c.oid=a.attrelid)
    WHERE n.nspname =  'monschema  '
    AND c.relkind = 'r'::char
    AND c.relname = 'matable'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /* Affichage des fonctions du schema monschema */
    SELECT c.proname
    FROM pg_catalog.pg_namespace as n
    INNER JOIN pg_catalog.pg_proc as c ON (n.oid = c.pronamespace)
    WHERE n.nspname = 'monschema ';
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    /* Affichage des trigger de la table matable du schema monschema  */
    SELECT g.tgname
    FROM pg_catalog.pg_namespace as n
    INNER JOIN pg_catalog.pg_class as c ON (n.oid = c.relnamespace)
    INNER JOIN pg_catalog.pg_trigger as g ON (c.oid=g.tgrelid)
    WHERE n.nspname =  'monschema'
    AND c.relkind = 'r'::char
    AND c.relname = 'matable';
    Bonne chance, et n'hésite pas à nous donner ta solution

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    super!

    je devrais bien avancer avec ça !!
    quand j'arrive à quelque chose je vous le dis!
    jf

Discussions similaires

  1. problème import:"debut de l'activation des contraintes"
    Par monthaldo dans le forum Import/Export
    Réponses: 2
    Dernier message: 06/06/2011, 09h57
  2. Detection des touches enfoncées par API
    Par Ingham dans le forum VB 6 et antérieur
    Réponses: 31
    Dernier message: 20/02/2006, 12h30
  3. Affichage des contraintes
    Par nicobouboufr dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 17/03/2004, 09h21
  4. [debutant] preservation des espace dans un fichier xml
    Par Eric B dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 03/09/2003, 09h43
  5. Réponses: 2
    Dernier message: 26/02/2003, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo