insérer automatiquement des nouveaux champs lors de la saisie
3 réponses
karine
Bonjour à tous,
J'ai peur que ma demande ne soit pas très claire, mais je me lance :
je travaille sur une DB d'histoire de l'art où je dois gérer des oeuvres qui
peuvent avoir été créées par différents artistes. J'ai une table Auteurs avec
notamment (évidemment !) un champ auteur. Dans le cas d'une oeuvre d'un seul
auteur, tout va bien.
Je voudrais, lors de la saisie, pouvoir cliquer sur un bouton et voir
apparaître un deuxième champ auteur (si j'ai deux auteurs par exemple), voire
trois ou quatre dans le cas d'oeuvres complexes. Cela m'éviterait en fait
d'avoir un champ multivalué.
Est-ce que c'est possible, ou bien cela relève-t-il de la magie ?
Faut-il que je crée plusieurs champs auteurs dans la table (du type auteur1,
auteur2...) que je masque ces champs s'ils ne servent pas et que je les fasse
réapparaître lorsque c'est nécessaire ?
Merci de votre aide !
Karine.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gafish
"karine" a écrit dans le message de news:
Bonjour à tous,
Bonjour,
J'ai peur que ma demande ne soit pas très claire, mais je me lance : je travaille sur une DB d'histoire de l'art où je dois gérer des oeuvres qui peuvent avoir été créées par différents artistes. J'ai une table Auteurs avec notamment (évidemment !) un champ auteur. Dans le cas d'une oeuvre d'un seul auteur, tout va bien. ... Est-ce que c'est possible, ou bien cela relève-t-il de la magie ? Faut-il que je crée plusieurs champs auteurs dans la table (du type auteur1, auteur2...) que je masque ces champs s'ils ne servent pas et que je les fasse réapparaître lorsque c'est nécessaire ?
Dans des cas comme celui là, il n'est pas conseillé d'avoir des champs auteur1, auteur2... pour plusieurs raisons : - tu ne pourras jamais être sûre que tu as assez de champs, et tu seras toujours embêtée, tu pourras en rajouter mais ca va changer la structure de ta base, ce qui n'est jamais bon (ca veut dire après vérifier et changer toutes tes requêtes...) - si tu veux trouver toutes les oeuvres d'un auteur, il faudra que tu cherches s'il est dans auteur1, dans auteur2, dans auteur3... ce sera très lourd
La solution c'est d'avoir une table oeuvre, sans la notion d'auteur, une table auteur, et une table entre les deux qui fait la correspondance. Dans ta table oeuvre tu auras un idOeuvre, dans ta table auteur un idAuteur, et tu dans ta table de correspondance tu auras la correspondance entre ces deux identifiants comme suit :
idOeuvre idAuteur 1 5 1 3 1 9 2 3 3 8 3 3
etc... ainsi tu n'es pas limitée. Ici par exemple pour l'oeuvre 1 tu as trois auteurs. Tu retrouves ensuite toutes les informations des oeuvres et des auteurs à partir de là par des requpetes avec des jointures sur les identifiants. Est-ce que c'est clair ?
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
"karine" <karine@discussions.microsoft.com> a écrit dans le message de news:
28654F16-AC0A-4D2D-8C5B-EA55A1FF7F56@microsoft.com...
Bonjour à tous,
Bonjour,
J'ai peur que ma demande ne soit pas très claire, mais je me lance :
je travaille sur une DB d'histoire de l'art où je dois gérer des oeuvres
qui
peuvent avoir été créées par différents artistes. J'ai une table Auteurs
avec
notamment (évidemment !) un champ auteur. Dans le cas d'une oeuvre d'un
seul
auteur, tout va bien.
...
Est-ce que c'est possible, ou bien cela relève-t-il de la magie ?
Faut-il que je crée plusieurs champs auteurs dans la table (du type
auteur1,
auteur2...) que je masque ces champs s'ils ne servent pas et que je les
fasse
réapparaître lorsque c'est nécessaire ?
Dans des cas comme celui là, il n'est pas conseillé d'avoir des champs
auteur1, auteur2... pour plusieurs raisons :
- tu ne pourras jamais être sûre que tu as assez de champs, et tu seras
toujours embêtée, tu pourras en rajouter mais ca va changer la structure de
ta base, ce qui n'est jamais bon (ca veut dire après vérifier et changer
toutes tes requêtes...)
- si tu veux trouver toutes les oeuvres d'un auteur, il faudra que tu
cherches s'il est dans auteur1, dans auteur2, dans auteur3... ce sera très
lourd
La solution c'est d'avoir une table oeuvre, sans la notion d'auteur, une
table auteur, et une table entre les deux qui fait la correspondance. Dans
ta table oeuvre tu auras un idOeuvre, dans ta table auteur un idAuteur, et
tu dans ta table de correspondance tu auras la correspondance entre ces deux
identifiants comme suit :
idOeuvre idAuteur
1 5
1 3
1 9
2 3
3 8
3 3
etc... ainsi tu n'es pas limitée. Ici par exemple pour l'oeuvre 1 tu as
trois auteurs.
Tu retrouves ensuite toutes les informations des oeuvres et des auteurs à
partir de là par des requpetes avec des jointures sur les identifiants.
Est-ce que c'est clair ?
Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
J'ai peur que ma demande ne soit pas très claire, mais je me lance : je travaille sur une DB d'histoire de l'art où je dois gérer des oeuvres qui peuvent avoir été créées par différents artistes. J'ai une table Auteurs avec notamment (évidemment !) un champ auteur. Dans le cas d'une oeuvre d'un seul auteur, tout va bien. ... Est-ce que c'est possible, ou bien cela relève-t-il de la magie ? Faut-il que je crée plusieurs champs auteurs dans la table (du type auteur1, auteur2...) que je masque ces champs s'ils ne servent pas et que je les fasse réapparaître lorsque c'est nécessaire ?
Dans des cas comme celui là, il n'est pas conseillé d'avoir des champs auteur1, auteur2... pour plusieurs raisons : - tu ne pourras jamais être sûre que tu as assez de champs, et tu seras toujours embêtée, tu pourras en rajouter mais ca va changer la structure de ta base, ce qui n'est jamais bon (ca veut dire après vérifier et changer toutes tes requêtes...) - si tu veux trouver toutes les oeuvres d'un auteur, il faudra que tu cherches s'il est dans auteur1, dans auteur2, dans auteur3... ce sera très lourd
La solution c'est d'avoir une table oeuvre, sans la notion d'auteur, une table auteur, et une table entre les deux qui fait la correspondance. Dans ta table oeuvre tu auras un idOeuvre, dans ta table auteur un idAuteur, et tu dans ta table de correspondance tu auras la correspondance entre ces deux identifiants comme suit :
idOeuvre idAuteur 1 5 1 3 1 9 2 3 3 8 3 3
etc... ainsi tu n'es pas limitée. Ici par exemple pour l'oeuvre 1 tu as trois auteurs. Tu retrouves ensuite toutes les informations des oeuvres et des auteurs à partir de là par des requpetes avec des jointures sur les identifiants. Est-ce que c'est clair ?
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
karine
Merci Arnaud, C'est clair ! Par contre si je n'ai aucun problème à comprendre ce que tu dis au niveau de la structure (tables et liens), je me demande comment gérer ça au niveau des formulaires : il faut que je dise adieu à l'idée d'un formulaire unique, j'imagine... Encore merci ! Karine.
Dans des cas comme celui là, il n'est pas conseillé d'avoir des champs auteur1, auteur2... pour plusieurs raisons : - tu ne pourras jamais être sûre que tu as assez de champs, et tu seras toujours embêtée, tu pourras en rajouter mais ca va changer la structure de ta base, ce qui n'est jamais bon (ca veut dire après vérifier et changer toutes tes requêtes...) - si tu veux trouver toutes les oeuvres d'un auteur, il faudra que tu cherches s'il est dans auteur1, dans auteur2, dans auteur3... ce sera très lourd
La solution c'est d'avoir une table oeuvre, sans la notion d'auteur, une table auteur, et une table entre les deux qui fait la correspondance. Dans ta table oeuvre tu auras un idOeuvre, dans ta table auteur un idAuteur, et tu dans ta table de correspondance tu auras la correspondance entre ces deux identifiants comme suit :
idOeuvre idAuteur 1 5 1 3 1 9 2 3 3 8 3 3
etc... ainsi tu n'es pas limitée. Ici par exemple pour l'oeuvre 1 tu as trois auteurs. Tu retrouves ensuite toutes les informations des oeuvres et des auteurs à partir de là par des requpetes avec des jointures sur les identifiants. Est-ce que c'est clair ?
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Merci Arnaud,
C'est clair !
Par contre si je n'ai aucun problème à comprendre ce que tu dis au niveau de
la structure (tables et liens), je me demande comment gérer ça au niveau des
formulaires : il faut que je dise adieu à l'idée d'un formulaire unique,
j'imagine...
Encore merci !
Karine.
Dans des cas comme celui là, il n'est pas conseillé d'avoir des champs
auteur1, auteur2... pour plusieurs raisons :
- tu ne pourras jamais être sûre que tu as assez de champs, et tu seras
toujours embêtée, tu pourras en rajouter mais ca va changer la structure de
ta base, ce qui n'est jamais bon (ca veut dire après vérifier et changer
toutes tes requêtes...)
- si tu veux trouver toutes les oeuvres d'un auteur, il faudra que tu
cherches s'il est dans auteur1, dans auteur2, dans auteur3... ce sera très
lourd
La solution c'est d'avoir une table oeuvre, sans la notion d'auteur, une
table auteur, et une table entre les deux qui fait la correspondance. Dans
ta table oeuvre tu auras un idOeuvre, dans ta table auteur un idAuteur, et
tu dans ta table de correspondance tu auras la correspondance entre ces deux
identifiants comme suit :
idOeuvre idAuteur
1 5
1 3
1 9
2 3
3 8
3 3
etc... ainsi tu n'es pas limitée. Ici par exemple pour l'oeuvre 1 tu as
trois auteurs.
Tu retrouves ensuite toutes les informations des oeuvres et des auteurs à
partir de là par des requpetes avec des jointures sur les identifiants.
Est-ce que c'est clair ?
Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Merci Arnaud, C'est clair ! Par contre si je n'ai aucun problème à comprendre ce que tu dis au niveau de la structure (tables et liens), je me demande comment gérer ça au niveau des formulaires : il faut que je dise adieu à l'idée d'un formulaire unique, j'imagine... Encore merci ! Karine.
Dans des cas comme celui là, il n'est pas conseillé d'avoir des champs auteur1, auteur2... pour plusieurs raisons : - tu ne pourras jamais être sûre que tu as assez de champs, et tu seras toujours embêtée, tu pourras en rajouter mais ca va changer la structure de ta base, ce qui n'est jamais bon (ca veut dire après vérifier et changer toutes tes requêtes...) - si tu veux trouver toutes les oeuvres d'un auteur, il faudra que tu cherches s'il est dans auteur1, dans auteur2, dans auteur3... ce sera très lourd
La solution c'est d'avoir une table oeuvre, sans la notion d'auteur, une table auteur, et une table entre les deux qui fait la correspondance. Dans ta table oeuvre tu auras un idOeuvre, dans ta table auteur un idAuteur, et tu dans ta table de correspondance tu auras la correspondance entre ces deux identifiants comme suit :
idOeuvre idAuteur 1 5 1 3 1 9 2 3 3 8 3 3
etc... ainsi tu n'es pas limitée. Ici par exemple pour l'oeuvre 1 tu as trois auteurs. Tu retrouves ensuite toutes les informations des oeuvres et des auteurs à partir de là par des requpetes avec des jointures sur les identifiants. Est-ce que c'est clair ?
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Gafish
"karine" a écrit dans le message de news:
Merci Arnaud, C'est clair ! Par contre si je n'ai aucun problème à comprendre ce que tu dis au niveau de la structure (tables et liens), je me demande comment gérer ça au niveau des formulaires : il faut que je dise adieu à l'idée d'un formulaire unique, j'imagine...
Pas forcément, tu te fais un formulaire oeuvre, avec un sous form basé sur la table de correspondance, tu bases la relation form/sousform sur l'idOeuvre, et pour t'aider à saisir les auteurs tu fais une liste déroulante.
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
"karine" <karine@discussions.microsoft.com> a écrit dans le message de news:
1636393D-F317-44F2-80B5-A2985AFBFEF4@microsoft.com...
Merci Arnaud,
C'est clair !
Par contre si je n'ai aucun problème à comprendre ce que tu dis au niveau
de
la structure (tables et liens), je me demande comment gérer ça au niveau
des
formulaires : il faut que je dise adieu à l'idée d'un formulaire unique,
j'imagine...
Pas forcément, tu te fais un formulaire oeuvre, avec un sous form basé sur
la table de correspondance, tu bases la relation form/sousform sur
l'idOeuvre, et pour t'aider à saisir les auteurs tu fais une liste
déroulante.
Arnaud
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Merci Arnaud, C'est clair ! Par contre si je n'ai aucun problème à comprendre ce que tu dis au niveau de la structure (tables et liens), je me demande comment gérer ça au niveau des formulaires : il faut que je dise adieu à l'idée d'un formulaire unique, j'imagine...
Pas forcément, tu te fais un formulaire oeuvre, avec un sous form basé sur la table de correspondance, tu bases la relation form/sousform sur l'idOeuvre, et pour t'aider à saisir les auteurs tu fais une liste déroulante.
Arnaud -- Charte du forum : http://users.skynet.be/mpfa/ Recherche dans les archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr