Conseil sur une base de donnée (Client, Adresse de livraison)

Résolu
cs_Jielde Messages postés 226 Date d'inscription mardi 17 octobre 2000 Statut Membre Dernière intervention 1 décembre 2010 - 30 nov. 2010 à 21:25
cs_Jielde Messages postés 226 Date d'inscription mardi 17 octobre 2000 Statut Membre Dernière intervention 1 décembre 2010 - 1 déc. 2010 à 23:04
Bonjour,

Voilà je suis en train de développé un logiciel de facturation pour me facilité la vie dans ma société.

J'ai pas contre un problème pour la stratégie à appliquer pour la création de ma base, je m'explique.

J'ai une form "Nouveau client" où je rentre les infos clients (normal vous direz) : "Nom, Prénom, ...".
Dans la form j'ai aussi un DataGridWiew pour les adresses de livraison.
Je souhaiterais entrer autant d'adresse de livraison (Adresse, Code Postal, Ville) que l'utilisateur souhaite.
Donc j'ai une Table SQL "Client" avec les champs : "Nom, Prenom, ..."

Mais comment je fais pour avoir autant d'adresse de livraison que je souhaite ? Créer une nouvelle table "Adresse_de_livraison" ? ou avez vous une astuce ?

Pouvez-vous m'aider car je galère un peut faut dire

Merci.

4 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
30 nov. 2010 à 22:04
Et en poussant le bouchon plus loin, si on tient compte aussi de(s) l'adresse(s) de facturation.

Cas 1 :
Soit une seule adresse de facturation possible, dans ce cas il te faut
- une table client qui contiendra les informations du client. Elle peut aussi contenir l'adresse de facturation.
- une table Adresse qui contiendra les adresses de livraisons qui pourront être rattachées au client par un idclient (clé étrangère)

Cas 2 :
Soit plusieurs adresses de facturation possibles, dans ce cas le mieux étant
- une table client contenant uniquement des infos client
- une table adresse contenant uniquement des informations relatives à une adresse
et pour faire le lien
- une table d'association pour les adresses de facturations avec d'un coté une clé étrangère vers la table client, une autre vers la table adresse
- une table d'association pour les adresses de livraisons de même structure

Cas 2, Variante 1 :
Les 2 tables pouvant être une seule et même table, si tu peux différencier dedans les adresses de livraisons de celle de facturation.

Cas 2, Variante 2 :
Tu pourrais aussi te passer des tables d'associations, en faisant le lien directement le lien entre la table adresse et la table client à condition d'avoir la possibilité de différencier les adresses de livraisons et de facturations.

Si ta table Adresse doit(peut) servir à d'autres adresses que les 2 citées, ça sera le Cas n°2
Dans le cas contraire, si tu ne permet qu'une adresse de facturation, tu peux te contenter du Cas n°1, voire de la Variante 2 du Cas 2, éventuellement la Variante 1
Le cas n° 2 est plus propre et offre le plus de souplesse au niveau de l'utilisation de la table adresse mais complexifie le modèle métier. La variante 1 simplifie un peu en supprimant une table, la variante 2 en apporte un peu plus mais en contre-partie limite l'utilisation de la table adresse

A toi de choisir, mais au minimum il te faut la table client et la table adresse !!!



[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
30 nov. 2010 à 21:49
Bonjour,

Oui, une table pour stcker les adresse avec un lien (champ numérique) vers l'Id de la ligne du client concerné.

Mon site
0
cs_Jielde Messages postés 226 Date d'inscription mardi 17 octobre 2000 Statut Membre Dernière intervention 1 décembre 2010
30 nov. 2010 à 22:32
Merci pour vos réponses,

C'est bien se que je pensais mais j'étais pas sur de ma stratégie.

Par contre j'ai un problème, car dans les infos clients j'ai :
- Info client (Société, Nom, prénom, adresse, ...)
- Adresse(s) de livraison(s)
- Et le(s) contact(s) de ce clients

Donc encore une table pour les Contacts

Mais là où sa pèche, je dois donc d'abord enregistrer les infos clients pour avoir l'ID unique, ensuite je pourrais enregistrer les Adresses de livraisons et les Contacts.

J'ai raison ?

Si oui vous avez une astuce pour récupéré l'ID client au moment de l'enregistrement ou je lit la dernière ligne ?

Merci
0
cs_Jielde Messages postés 226 Date d'inscription mardi 17 octobre 2000 Statut Membre Dernière intervention 1 décembre 2010
1 déc. 2010 à 23:04
Merci pour vos réponse, sa ma bien aidé !
0
Rejoignez-nous