Bonjour,
Je bloque sur les relations n-m, j'ai besoin de vos aides pour dépatouiller tout ça.
J'ai deux tables article et commande.
1 article peut se trouver dans n commandes
1 commande peut contenir n articles
On est donc dans une relation n-m (ou n-n ?)
J'ai compris que pour ce genre de relation il faut une table intermédiaire mais je peux me tromper.
Donc cette table intermédiaire se nommera article_commande et possèdera une clé primaire composée d'un champ article_id faisant référence à l'id de la table article et un champ commande_id faisant référence à l'id de la table commande.
0ème question : Ma table commande doit comporter quoi comme champs ? id, numéro de commande, articles (représentés comment ? une suite de chaine de caractères comme article1, article15, article3 ?) ou alors dans la table commande il y aura 1 ligne pour chaque article ?) quantité (donc si il y a une ligne par article on pourra remplir la colonne quantité)
1ère question :
Dans un programme 1 personne passe une commande et y insère des articles. Quel est la commande SQL à faire ???
INSERT INTO commande (article1, article3, article15) // Mais comment insérer la quantité des articles commandé ?
2ème question :
Comment la table intermédiaire doit être complété ? A quel moment dans le programme il faut faire un INSERT INTO article_commande (article_id, commande_id) ?
3ème question :
Mais ou mettre la quantité ? Est ce que ce sera un attribut de la table intermédiaire et si oui pourquoi ?
4ème question :
Comment selectionner la totalité d'une commande ? En passant par la table de jointure ?
Donc voilà je suis plus que perdu. J'aimerai si vous voulez bien m'aider bien sûr, comprendre exactement ce que je dois faire dans ce cas.
De la compréhension, à la création des tables avec schémas si possible, aux insertions en SQL. Tout ceci par clarté et je pense que ça pourra aider d'autres personnes comme moi qui débutent. En effet il existe maintes ressources sur le net et dans les livres mais pour les auteurs tout ceci est clair et ça manque méchamment de détails parfois pour l'étudiant.
PS : mon langage favori est le php donc ça peut m'aider à éclaircir encore plus si vous avez des exemples de bonnes pratique dans le code.
Un grand merci d'avance!!!
Partager