Rechercher : dans
Par :

Organisation de ma base MYSQL

Dernière réponse le 27 avr 2005 à 14:11:16 Golems, le 27 avr 2005 à 08:34:01 
 Signaler ce message aux modérateurs

Bonjour

Je voudrais votre avis sur l'organisation de ma base de données MYSQL.

Je voudrais faire un site avec x vendeurs et y produits à vendre où un même produit peut être vendu par des vendeurs différents à des prix différents.

Pour un vendeur pas de soucis :

J'ai les tables suivantes :

table magasin (idMagasin, nomMagasin, adresseMagasin, telMagasin, etc...)

table produits (idProduits, descriptifProduits, prix)


Mon souci est lorsque j'ai plusieurs vendeurs pour un même produit. Faut il ajouter un nouveau champ à la table produit pour chaque vendeur, sachant que je sais combien de vendeur j'ai à l'avance.

La table produits deviendrai donc celle-ci :
table produits (idProduits, descriptifProduits, prixVendeur1, prixVendeur2, prixVendeur3, etc..., prixVendeurX) ???

Avez vous une autre méthode pour résoudre ce pb.
Comment font les sites style priceminister.com pour organiser leur base de données sur ce sujet : 1 produit, x vendeurs à des prix complétement différents

Merci d'avance

Golems

Meilleures réponses pour « Organisation de ma base MYSQL » dans :
Sauvegarde restauration base de données Mysql VoirL'article suivant va présenter la manière la plus facile pour sauvegarder et restaurer les bases de données Mysql. Sauvegarde Pour sauvegarder une base de données existante il est conseillé de créer un dump. Pour dumper toutes les bases de...
MySQL – Optimisation VoirL’optimisation au niveau de MySQL passe par trois composants, à savoir : Optimisation du serveur MySQL Optimisation de la base de données Optimisation des requêtes Optimisation de la configuration de serveur MySQL L’optimisation du serveur peut...
MySQL - Savoir qui est connecté et qui fait quoi VoirPour connaître qui est connecté et ce qu'il fait au niveau d'une base MySQL il suffit de lancer la commande : mysql> show processlist; La liste des process et des utilisateur s'affiche. Pour terminer un processus, il suffit de le tuer en...
Importer et exporter des données sous MySQL VoirImportation et exportation Les Système de Gestion de Bases de Données tels que MySQL permettent de manipuler facilement et avec beaucoup de souplesse un très important volume de données. Toutefois, aussi robuste soit MySQL, il peut être intéressant...
MySQL - Installation sous Windows VoirPrésentation de MySQL MySQL est un Système de Gestion de Bases de Données (SGBD) fonctionnant sous Linux et Windows. Depuis la version 3.23.19, MySQL est sous Licence GPL (aussi bien sous Linux que Windows), ce qui signifie qu'il peut être utilisé...

1

sso, le 27 avr 2005 à 08:43:26

Salut,

jpense que tu devrais créer une nouvelle table VENDEUR


voila

Répondre à sso

2

bacchuss, le 27 avr 2005 à 08:56:33

Salut, je dirai même 2 tables:

Vendeur (idVendeur, nomVendeur, ....)
Vente (idVendeur, idProduit, Prix)

Ca complique un peu tes requetes mais c'est beaucoup plus propre et plus puissant comme ca. __________________________________________
01001001110101001010100101 et plus si affinités

Répondre à bacchuss

4

Golems, le 27 avr 2005 à 11:39:32

Oki donki merci pour le conseil

Juste un petit hic

table magasin (...)
table produits (idProduit, descProduit, prixProduit)

devient
table magasin (...)
table produits (idProduit, descProduit)
tables vendeurs (idVendeur, nomVendeur, ....)
tables vente (idVendeur, idProduit, Prix)

Ok pas de soucis jusque la, mais imagine 2000 produits avec ne serait ce que 2 vendeurs qui vendent les mêmes produits mais à des prix différents -> ma table vente contiendra 4000 entrées !!!!!!! lourd tres tres lourd

Moi je trouvais que ma solution d'ajouter un nouveau champ par vendeur à la table produits était moins lourd : je ne garde que 2000 entrées dans mes produits avec un ajout de champ lorsqu'un vendeur se déclare comme nouveau vendeur.

Quand penses tu ?

Merci d'avance

Golems

Répondre à Golems

3

Golems, le 27 avr 2005 à 11:38:29

Oki donki merci pour le conseil

Juste un petit hic

table magasin (...)
table produits (idProduit, descProduit, prixProduit)

devient
table magasin (...)
table produits (idProduit, descProduit)
tables vendeurs (idVendeur, nomVendeur, ....)
tables vente (idVendeur, idProduit, Prix)

Ok pas de soucis jusque la, mais imagine 2000 produits avec ne serait ce que 2 vendeurs qui vendent les mêmes produits mais à des prix différents -> ma table vente contiendra 4000 entrées !!!!!!! lourd tres tres lourd

Moi je trouvais que ma solution d'ajouter un nouveau champ par vendeur à la table produits était moins lourd : je ne garde que 2000 entrées dans mes produits avec un ajout de champ lorsqu'un vendeur se déclare comme nouveau vendeur.

Quand penses tu ?

Merci d'avance

Golems

Répondre à Golems

5

bacchuss, le 27 avr 2005 à 14:02:27

Bah c'est comme ca que ce sera le plus efficace.
Imagine toi faire des recherches pour connaitre tous les produits vendus par un vendeur. Avec ta méthode, tu vas devoir scruter toute ta table produits, sachant que pleins de champs seront vides...

et puis 4000 entrées, c'est pas beaucoup... __________________________________________
01001001110101001010100101 et plus si affinités

Répondre à bacchuss

6

 kij_82, le 27 avr 2005 à 14:11:16

Aprend qq concepts de la méthode MERISE si tu veux faire des bases de données optimisées.
Pour cela, tu as déjà plein de post qui en parle.

++ ~ iclic @ gauch,iclic,  iclic @ droate, iclic, iclic
             et ya pas de bôg môsieu !    ~

Répondre à kij_82