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

 MySQL Discussion :

héritage dans bd


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2009
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 31
    Par défaut héritage dans bd
    je suis debutant et je travaille sur phpmyadmin pour créer mon base de donnée
    on a un table produit qui est constitu de des autres tables"film,logiciel,jeux.."
    j'emis les champs communs de ses dernier dans la table produit
    1) est ce que je répete le clé primaire de table produit"ID_PROD" dans les autres table ou quoi ? parce que j'emis les champs communs dans tb produit et ne reste rien a écrire dan les autres tb
    2)aprés la creation des tables comment on peut travailler l'heritage cad avec phpmyadmin on a construire seulement les tables sans dite qu'il y a la notion de l'heritage et comment faire avec phpmyadmin
    SVP aider moi pour que ma base soit le plus logique possible

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    L'héritage n'est utile que si tu as des attributs particuliers pour chaque type de produit or ici tu semble nous dire qu'à part l'identifiant du produit tu n'as rien d'autre à mettre dans les tables filles.

    Sinon pour répondre à tes questions :
    1) est ce que je répete le clé primaire de table produit"ID_PROD" dans les autres tables ?
    Oui.

    MCD :
    Film -(1,1)----Etre----0,1- Produit

    Tables :
    Produit (p_id, p_prix...)
    Film (f_id_produit, f_titre, f_annee, f_duree...)

    En héritage, on fait une identification relative, symbolisée dans le MCD par les parenthèses autour des cardinalités côté Film, ce qui fait que la table fille (Film) hérite de l'identifiant de la table mère (Produit).

    2)aprés la creation des tables comment on peut travailler l'heritage cad avec phpmyadmin on a construire seulement les tables sans dite qu'il y a la notion de l'heritage et comment faire avec phpmyadmin
    L'héritage n'est pas formellement représenté dans phpMyAdmin, hormis par le fait que la clé primaire de la table film sera auusi une clé étrangère faisant référence à la clé primaire de la table produit.
    Bien sûr, pour mettre en oeuvre les clés étrangères, il faut utiliser le moteur InnoDB.
    Apparaîtra alors sous la liste des colonnes (que phpMyAdmin appelle improprement "champs") un lien vers la gestion des relations.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre averti
    Inscrit en
    Décembre 2009
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 31
    Par défaut slt
    je vous remerci pour ton aide mais il reste une chause qui n'est pas claire
    le moteur InnoDB ou on peut le trouver et est ce qu'il est facile de l'utiliser?

  4. #4
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    570
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2003
    Messages : 570
    Par défaut
    CinePhil t'explique que l'héritage deviendra dans ta base de données une relation clé primaire clé étrangère "comme" pour une relation "normale" entre deux tables, avec :
    la clé primaire de la table film sera aussi une clé étrangère faisant référence à la clé primaire de la table produit
    Citation Envoyé par marwen86 Voir le message
    je vous remerci pour ton aide mais il reste une chause qui n'est pas claire
    le moteur InnoDB ou on peut le trouver et est ce qu'il est facile de l'utiliser?

    il est intégré en mysql, quand tu crée ta table en phpmyadmin, directement après, lorsque tu précisera les champs: en bas tu pourra choisir le moteur de stockage (voir pièce jointe), par défaut c innodb, donc n'y touche pas.
    en fait le moteur te permettra de créer des relations entre les tables avec le lien décris plus haut :
    Images attachées Images attachées  

  5. #5
    Membre averti
    Inscrit en
    Décembre 2009
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 31
    Par défaut merci
    merci merci merci

  6. #6
    Membre averti
    Inscrit en
    Décembre 2009
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 31
    Par défaut qus
    Une autre question SVP
    produit("id_produit")-->film("id_produit")
    -->logiciel("id_log")
    -->jeux(id_jeux")
    Est-ce que j'ajoute 3 autres champs dans la table produit pour être des clés étrangères des autres tables ou "id_produit" seul peut représenter une clé étrangères pour toutes les autres tables?

Discussions similaires

  1. héritage dans une requète sql
    Par 080983 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 05/08/2007, 17h21
  2. empecher héritage dans liste à puce imbriquées
    Par zamanika dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 15/03/2007, 15h18
  3. Questions sur l'héritage dans Matisse
    Par Cassios dans le forum NetBeans
    Réponses: 8
    Dernier message: 14/03/2007, 23h23
  4. Relations d'héritage dans un SGBD
    Par mawi dans le forum Access
    Réponses: 3
    Dernier message: 18/04/2005, 15h15
  5. Relations d'héritage dans un SGBD
    Par mawi dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 13/04/2005, 23h51

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