Access
mirmae
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
Bruce Willix Messages postés 11966 Date d'inscription Statut Contributeur Dernière intervention -
Bruce Willix Messages postés 11966 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je suis débutant sur access et je suis en train de créer une base de donnée pour des films.
J'ai donc une catégorie appelée "genre". Pour dire "tel film c'est tel genre", ça j'y arrive facilement. (je l'indique directement dans le champs "genre")
Par contre comment faut il faire lorsqu'il y a plusieurs genres pour un film et lui faire afficher?
Par exemple avoir une base de donnée de genres et lui faire aller chercher dedans et pouvoir en prendre plusieurs.
Merci d'avance
Je suis débutant sur access et je suis en train de créer une base de donnée pour des films.
J'ai donc une catégorie appelée "genre". Pour dire "tel film c'est tel genre", ça j'y arrive facilement. (je l'indique directement dans le champs "genre")
Par contre comment faut il faire lorsqu'il y a plusieurs genres pour un film et lui faire afficher?
Par exemple avoir une base de donnée de genres et lui faire aller chercher dedans et pouvoir en prendre plusieurs.
Merci d'avance
3 réponses
Tu as plusieurs possibilités.
La première - et la plus facile - est de créer autant de champs" "genre" que nécessaire, qui pointent tous vers la table "GENRES". Avec par exemple, des noms légèrement différents tels que "genre-principal", "genre2", "genre3", etc... avantage de la péthode: tu limites le nombre de genres qu'on peut associer à un film particulier. Inconvénient de la méthode: c'est moyennement flexible.
Second méthode: tu crées une table d'associations (une troisième table): tu laisse la PrimaryKey être générée par Access, tu mets un champ "film" et un champ "genre associé". Tu lies le champ film à la clé primaire de ta table film et le champ "genre associé" à ta table des genres. Ensuite, tu crées une requête qui te donne toutes les associations. C'est beaucoup plus souple comme formule.
La première - et la plus facile - est de créer autant de champs" "genre" que nécessaire, qui pointent tous vers la table "GENRES". Avec par exemple, des noms légèrement différents tels que "genre-principal", "genre2", "genre3", etc... avantage de la péthode: tu limites le nombre de genres qu'on peut associer à un film particulier. Inconvénient de la méthode: c'est moyennement flexible.
Second méthode: tu crées une table d'associations (une troisième table): tu laisse la PrimaryKey être générée par Access, tu mets un champ "film" et un champ "genre associé". Tu lies le champ film à la clé primaire de ta table film et le champ "genre associé" à ta table des genres. Ensuite, tu crées une requête qui te donne toutes les associations. C'est beaucoup plus souple comme formule.
Merci Bruce pour ces possibilités. Je pense que je vais faire la première possibilité dont tu m'as parlé. Par contre j'ai peut être trouvé une autre solution. Lorsque tu choisis le "type de donnée", dans l'onglet "Liste des choix", tout en bas il y a une option "Autoriser plusieurs valeurs" et quand tu fais "oui", tu as la possibilité de choisir deux genres de films. Je vais test tout ça pour voir ce que ça donne.
Tu as pu voir ce que ça donnait ? Perso, c'est une solution que je n'aime pas : ça crée des champs "hybrides" qui ne sont pas très compatibles avec le SQL standard, et donc en cas d'export ou d'import, c'est toujours des ennuis en perspective... En matière de DB, il faut privilégier la simplicité :-D