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 :

[amc designer] création d'une base postgresql


Sujet :

PostgreSQL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 96
    Points : 72
    Points
    72
    Par défaut [amc designer] création d'une base postgresql
    Bonjour,

    J'ai créé un modèle (comportant un héritage) via amc designer et j'ai fait générer le code de création de la BD pour PostGreSql 7.3
    Est ce que ce je risque des problèmes si j'applique le code SQL obtenu sur une version 7.4.1 de PostGreSql.

    remarque: je ne connais aucune version de PostGreSql

    Merci

  2. #2
    Membre actif

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2003
    Messages : 209
    Points : 249
    Points
    249
    Par défaut
    Salut,

    AMC Designer, c'est de Sybase? Car moi je travail avec PowerAMC de Sybase. Franchement, je ne pense pas que tu risques d'avoir des problèmes car normalement chaque version de postgres est compatible avec la version précédente. Donc un script qui fonctionne avec la version 7.3, fonctionnera avec la version 7.4. Moi qui travaille avec ces deux versions, je n'ai pas encore eu de problème.

    Mais je ne mettrai pas ma main à couper.

    A+

  3. #3
    Membre actif

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2003
    Messages : 209
    Points : 249
    Points
    249
    Par défaut
    Peux-tu m'expliquer juste comment tu gères ton héritage, car il y a pls manières de faire.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 96
    Points : 72
    Points
    72
    Par défaut
    dac merci.

    Pour l'heritage avec powerAMC=AMC designer au niveau du MCD je pose ma table mere, mes tables filles.
    Dans l'entité mere je met les attributs communs à toutes mes entités dont l'identifiant. Dans les entités filles je mets que les attributs propres à ces entités.

    Au niveau MPD je garde le modèle générer par powerAMC à partir du mcd. C'est à dire je garde la table mere et je répète les propriétés de la table mére dans les tables filles.

    2 autres cas sont possibles:
    -faire disparaitre la table mere
    -garder la table mere et ne pas répéter les propriétés de celle-ci

    Moi j'utilise la première solution qui m'arrange bien pour la programmation.


    Voila

  5. #5
    Membre habitué
    Inscrit en
    Mai 2003
    Messages
    146
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 146
    Points : 172
    Points
    172
    Par défaut
    dans la version 7.3 l'héritage de PostGreSQL n'était pas très compatible avec l'intégrité référentielle, je ne sais pas si ca été modifié dans la 7.4

  6. #6
    Membre actif

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2003
    Messages : 209
    Points : 249
    Points
    249
    Par défaut
    En fait, avec Postgres, tu peux utiliser le inherits:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE [ [ LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name (
        { column_name data_type [ DEFAULT default_expr ] [ column_constraint [, ...
    ] ]
        | table_constraint }  [, ... ]
    )
    [ INHERITS ( parent_table [, ... ] ) ]
    [ WITH OIDS | WITHOUT OIDS ]
    mais après quelques tests, c'est pas la meilleures solutions. Surtout que PowerAMC ne connait pas cette syntax.

    Il reste effectivement 2 solutions*:
    1) dériver la clé du parents dans les enfants sans répéter les attributs du parents(c'est la meilleures solutions; à mon avis).
    2) dériver la clé du parents dans les enfants en répétant les attributs du parents. Mais c'est dangereux, car il y a un risque d'incohérence.

    * ta troisième solution d'enlever le parents, reste valable si tu n'as qu'un enfant, mais dans ce cas, je ne vois pas pourquoi on parle d'héritage.

    A part cela, je n'ai pas répondu à ta question. Comme je te disais, j'ai opté pour ma première solution. Je travail avec PostgreSQL 7.4 et je n'ai absolument pas de problème.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 96
    Points : 72
    Points
    72
    Par défaut
    Salut,

    Pour le risque d'incohérence je vais le régler au niveau de la prog, la BD va être remplie via des formulaire web.
    Pour mes tables filles les champs répétés de la table mère seront remplis automatiquement.

  8. #8
    Membre actif

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2003
    Messages : 209
    Points : 249
    Points
    249
    Par défaut
    Citation Envoyé par david42
    Salut,

    Pour le risque d'incohérence je vais le régler au niveau de la prog, la BD va être remplie via des formulaire web.
    Pour mes tables filles les champs répétés de la table mère seront remplis automatiquement.
    Remplis automatiquement? C'est ton application client qui fait cela? Mais c'est quand même dangereux. Il suffit que tu quittes ton entreprise et que quelqu'un d'autre vienne à modifier ton code pour qu'il oublie de remplir à double. Je ne comprends toujours pas pourquoi tu fais cela. Mais tu dois avoir une bonne raison!

    Du coup, je suis pas sur que nous avons réussi à répondre à ta question. Si tel est le cas, merci de mettre la balise résolu!

    A+

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 96
    Points : 72
    Points
    72
    Par défaut
    C'est ton application client qui fait cela?
    oui

    Pour ma question c'est ok. Apparemment le code généré par amc designer pour PostGreSql 7.3 fonctionne avec PostGreSql 7.4

    Merci

  10. #10
    Membre actif

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2003
    Messages : 209
    Points : 249
    Points
    249
    Par défaut
    Oui cela fonctionne... je l'ai testé mais je n'avais pas une grosse base de données.

    De rien et A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Création d'une base PARADOX dynamiquement ? tutorial ?
    Par BXDSPORT dans le forum Bases de données
    Réponses: 1
    Dernier message: 16/07/2004, 10h08
  2. Création d'une base de données contenant des images
    Par gandalf_le_blanc dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 16/06/2004, 15h29
  3. message d'erreur lors de la création d'une base
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 16/04/2004, 15h47
  4. Création d'une base avec IbConsole
    Par Lucien dans le forum Outils
    Réponses: 3
    Dernier message: 02/03/2004, 18h34
  5. Localisation d'une base Postgresql sur mdk 9.1
    Par Gregco dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 10/06/2003, 18h46

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