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

Diagrammes de Classes Discussion :

De l'UML à la création des tables


Sujet :

Diagrammes de Classes

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations forums :
    Inscription : Janvier 2004
    Messages : 18
    Points : 20
    Points
    20
    Par défaut De l'UML à la création des tables
    Salut à tous!
    Je souhaite passer de mon diagramme de classe à la création de tables dans ma base, mais je suis heurté à une difficulté sur la notion d'héritage.
    J'ai une classe Utilisateur(id, login, nom) qui se spécialise en Etudiant(Filière,Niveau) et Professeur(Spécialité). Dois-je créer 3 tables avec comme champs les propriétés de chaque classe? alors la table Professeur risque de contenir seulement qu'un seul champ(spécialité) et toutes les autres informations(y compris la clé primaire) se retrouveraient dans Utilisateur. Ce qui ne me parait pas claire.

    Donnez moi un coup de pouce!

  2. #2
    Membre émérite Avatar de Drizzt [Drone38]
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2004
    Messages
    1 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 001
    Points : 2 453
    Points
    2 453
    Par défaut
    C'est bien cela oui, tu dois faire 3 tables.
    Par contre il faut bien sur les lier avec une clé étrangère.

    En pratique tu auras donc Utilisateur(id_utilisateur, login, nom), Etudiant(fk_id_utilisateur, filière, niveau) et Professeur(fk_id_utilisateur, spécialité).

    En poussant plus loin j'imagine que filière, niveau et spécialité sont aussi des élements ayant une table dédiée donc ça sera la encore des clés étrangères vers les tables en question.
    Je ne réponds pas aux questions techniques par MP, le forum est là pour cela.

    La crypto c'est comme les flambys, une fois que tu as trouvé la languette tu as juste à tirer pour tout faire tomber.

    (\ _ /)
    (='.'=)
    Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations forums :
    Inscription : Janvier 2004
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    Merci, c'est très pertinent ce que tu as dit.
    Toujours en pratique cela veut-il dire que si je créer une méthode NouvelEtudiant, je dois lancer via mon programme 2 requêtes INSERT? une pour la table Utilisateur et l'autre pour Etudiant? ou existe t-il une autre méthode plus professionnelle?

    Merci pour votre assistance.

  4. #4
    Membre émérite Avatar de Drizzt [Drone38]
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2004
    Messages
    1 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 001
    Points : 2 453
    Points
    2 453
    Par défaut
    Oui tu dois faire deux requetes. Voir trois selon ton SGBD et comment tu gères l'id utilisateur.

    (Il existe peut être sur certains SGBD des méthodes d'insertions dans plusieurs tables mais restons dans le cas général).

    Et tes deux requêtes doivent être dans la même transaction. C'est à dire que si la seconde plante, la première doit être rollbacké aussi pour ne pas avoir des données partielles en base.
    Je ne réponds pas aux questions techniques par MP, le forum est là pour cela.

    La crypto c'est comme les flambys, une fois que tu as trouvé la languette tu as juste à tirer pour tout faire tomber.

    (\ _ /)
    (='.'=)
    Voici Lapinou. Aidez le à conquérir le monde
    (")-(") en le reproduisant

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations forums :
    Inscription : Janvier 2004
    Messages : 18
    Points : 20
    Points
    20
    Par défaut Je reviens encore sur l'héritage...
    Salut à tous,
    Je pensais avoir terminé avec mes classes avec héritage mais une question me tourmente encore
    Je souhaite maintenant créer une relation entre Etudiant et Professeur car un étudiant est rattaché à un professeur (comme son responsable pédagogique).
    Alors ma question est que est ce possible de créer une relation entre des classes filles d'un même parents!
    Si oui Etudiant contiendra t-il comme clé étrangère celle de Professeur ?

    Merci de m'aider pour ça

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 176
    Points : 301
    Points
    301
    Par défaut
    Bonjour,

    Oui vous pouvez créer ce genre d'association, et oui il faudra un système de clé étrangère, mais celui-ci dépendra des multiplicités que comporte votre diagramme de classe. Veuillez fournir votre diagramme pour une réponse plus précise.

    Cordialement,

Discussions similaires

  1. création des tables d'un méta modèle à partir d'UML sous oracle
    Par azerty951 dans le forum Conception/Modélisation
    Réponses: 0
    Dernier message: 14/05/2010, 20h27
  2. scripts de création des tables d'un user donné
    Par lsaid dans le forum Administration
    Réponses: 2
    Dernier message: 19/06/2007, 12h30
  3. Réponses: 4
    Dernier message: 12/03/2007, 12h48
  4. Création des tables avec les jointures.
    Par alexandrebergercyr dans le forum Langage SQL
    Réponses: 6
    Dernier message: 06/03/2007, 16h25
  5. Création des tables système
    Par tarik75 dans le forum Oracle
    Réponses: 7
    Dernier message: 17/08/2006, 18h02

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