Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5
  1. #1
    Invité de passage
    Homme Profil pro Clément
    Étudiant
    Inscrit en
    juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Nom : Homme Clément
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2012
    Messages : 6
    Points : 3
    Points
    3

    Par défaut BDD, accés à toutes les tables

    Bonjour,
    J'ai un problème en base de donnée plus précisément en mySQL mais je ne pense pas que le langage influ sur la résolution du problème c'est plurement théorique pour moi.

    Mon problème est que je dois pouvoir accéder à toutes les autres tables depuis une dernière table.
    Par exemple si j'ai 2 tables, 'salles' et 'batiments', je dois pouvoir accéder au 2 depuis ma derniere table 'allaccess'.
    Evidement je pourrais mettre un sallesID et batimentsID, le problème est que j'ai une centaine de table et que ca risque d'être assez gros au final !
    Je voulais savoir s'il n'y avait pas moyen de faire autrement que comme ca ?

    Le problème s'écrit comme ca : pouvoir accéder à toutes les tables depuis une seule table.

    es ce que mon problème est clair ?
    y a t-il d'autres possibilités ?

    Merci d'avance.

  2. #2
    Modérateur
    Avatar de CinePhil
    Homme Profil pro Philippe Leménager
    Ingénieur d'études en informatique
    Inscrit en
    août 2006
    Messages
    13 895
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Leménager
    Âge : 51
    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 : 13 895
    Points : 25 034
    Points
    25 034

    Par défaut

    On n'accède pas à une table à partir d'une autre !
    On fait éventuellement des jointures entre les tables mais ce n'est pas une question d'accès !

    Par exemple si j'ai 2 tables, 'salles' et 'batiments', je dois pouvoir accéder au 2 depuis ma derniere table 'allaccess'.
    Que réprésente "allaccess" ?

    Entre "salle" et "batiment", je vois bien une association naturelle :
    salle -1,1----situer----1,n- batiment

    Ce qui donnera une clé étrangère référençant l'identifiant du bâtiment dans la table des salles.

    Evidement je pourrais mettre un sallesID et batimentsID, le problème est que j'ai une centaine de table et que ca risque d'être assez gros au final !
    Je voulais savoir s'il n'y avait pas moyen de faire autrement que comme ca ?

    Le problème s'écrit comme ca : pouvoir accéder à toutes les tables depuis une seule table.

    es ce que mon problème est clair ?
    Non !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Autoentrepreneur.
    Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
    « 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
    Invité de passage
    Homme Profil pro Clément
    Étudiant
    Inscrit en
    juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Nom : Homme Clément
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2012
    Messages : 6
    Points : 3
    Points
    3

    Par défaut

    Le truc c'est que c'est mal fait mais j'ai pas le choix !
    Oui allaccess est une table qui apporte une propriété abstraite qui peut aller sur toutes les tables par exemple une propriété 'jolie' que je décide d'attacher ou non à n'importe qu'elle occurence de n'importe qu'elle table !

    C'est à dire que si je décide de faire via clé étrangère, vu que je ne sais pas ques ce que le user traite de 'jolie' il faut que je puisse référencer via une clé étrangère n'importe qu'elle table !

    Donc soit je rajoute la propriété jolie à toutes mes tables, soit je donne le moyen à cette derniere table ('allacess') de pouvoir référencer n'importe qu'elle table ! ce qui revient à stocké une centaine de clé étrangère ! (ce qui me pose problème sur le principe quand même !)

    es ce plus clair ?

    EDIT :

    je précise que la relation serait de ce genre :

    'n'importe quelle table' 0,1 ------ est_jolie ------ 0,1 'allaccess'

  4. #4
    Modérateur
    Avatar de CinePhil
    Homme Profil pro Philippe Leménager
    Ingénieur d'études en informatique
    Inscrit en
    août 2006
    Messages
    13 895
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Leménager
    Âge : 51
    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 : 13 895
    Points : 25 034
    Points
    25 034

    Par défaut

    Alors il faut que tu te penches sur la modélisation par métadonnées
    Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Autoentrepreneur.
    Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
    « 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 !

  5. #5
    Invité de passage
    Homme Profil pro Clément
    Étudiant
    Inscrit en
    juin 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Nom : Homme Clément
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2012
    Messages : 6
    Points : 3
    Points
    3

    Par défaut

    c'est pas moi qui ai fais l'original !
    Ok merci !

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •