IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Schéma Discussion :

BDD site vente auto-moto


Sujet :

Schéma

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut BDD site vente auto-moto
    Bonjour,
    Je suis un étudiant en informatique, et pour mon projet je doit réaliser un site de vente auto-moto (comme le site lacentrale par exemple), mais je ne sais par quoi je peux commencer ? Est ce que je mets les voitures et les motos dans la même table (dans ce cas j'aurais juste 2 table : client et auto_moto)? Est ce que je lié la table client à la table voiture et à la table moto? Comment faire pour gérer les options ? est ce que je mets tous les infos voiture dans une seule table voiture(id, marque, type, kilométrage, moteur, puissance, date mise en circulation, prix, couleur) ou je mets une table marque et une table type et je les lié à la table voiture ?
    Merci par avance

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Si tu fais une recherche dans le forum avec les mots voiture, moto et véhicule, tu trouveras des exemples déjà évoqués.

    Moto et voiture sont tous deux des véhicules mais, reconnais-le, avec des caractéristiques quand même différentes. Tu auras donc probablement à faire un héritage de véhicule vers moto et voiture.

    Et il est évident que, conformément aux formes normales à respecter pour modéliser une BDD, les attributs répétitifs tels que la marque ou la couleur doivent être externalisés dans des tables de référence.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre habitué Avatar de chewing-gum
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2009
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2009
    Messages : 105
    Points : 137
    Points
    137
    Par défaut
    Bonjour,

    Citation Envoyé par washwash Voir le message
    Bonjour,
    par quoi je peux commencer ?
    Je dirais simplement : dans l'ordre chronologique des évènements.

    1/ Avant de vendre "quoi que ce soit", il faut posséder des produits. Quels produits ? Des voitures, des motos, etc.
    Commence par modéliser les voitures et les motos.

    2/ Maintenant que tu as tes auto-moto, tu peux les vendre. Mais qui les achète ? Des clients.
    Modélise les clients.

    3/ On résume : tu as des auto-motos, et des clients. Il manque quelque chose ! La commande. Tu n'as plus qu'à modéliser la commande.

    Pour simplifier, c'est comme dans la "vraie vie" : Un supermarché a d'abord des produits. Puis, les clients entrent dans le magasin et choisissent les produits qui les intéressent. Enfin, il passent la commande et payent. Je ne fais que suivre des évènements qui se déroulent par ordre chronologique.

    Bien sûr, dans des cas plus complexes, il peut être difficile de toujours suivre l'ordre chronologique.

    Est ce que je mets les voitures et les motos dans la même table (dans ce cas j'aurais juste 2 table : client et auto_moto)?
    ça dépend de tes besoins. Tu peux faire 2 tables distinctes si les motos sont traités différemment des voitures.
    Si elles sont traitées de la même manière, tu peux les mettre dans la même table. Par contre, tu devras créer une nouvelle table : la catégorie de véhicule (et donc soit c'est une voiture, soit c'est une moto)

    Est ce que je lié la table client à la table voiture et à la table moto?
    Non. Il faut à priori passer par une étape intermédiaire : la commande !
    Comment faire pour gérer les options ?
    Encore une fois, c'est à toi de voir. D'ailleurs, tu parles "d'options", mais les options de quoi ? De la commande ? De la voiture ? de la moto ? Du client ?
    est ce que je mets tous les infos voiture dans une seule table voiture(id, marque, type, kilométrage, moteur, puissance, date mise en circulation, prix, couleur) ou je mets une table marque et une table type et je les lié à la table voiture ?
    Là encore, c'est à toi de voir. Néanmoins, je te conseille de faire plusieurs tables.

    Reviens avec ton schéma

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci bcp pour les réponses,
    En fait il y a pas d'acheteur, c'est exactement comme le principe du site la centrale, l'acheteur cherche les auto_moto et si un auto_moto l'intérésse aprés il contact le vendeur (le vendeur c'est la table client).
    Est ce que je dois enregister tous les options des auto dans une table ? et aprés quand le vendeur enregistre les options de sa voiture je les affecte dans la table voiture champ option (comme texte) ?
    merci

  5. #5
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    As-tu fait une recherche sur le forum, comme je l'ai suggéré dans mon précédent message ?

    Les options des véhicules sont aussi des données répétitives. Si un utilisateur saisit comme critère de recherche "Climatisation", il n'aura pas les véhicules pour lesquels le vendeur aura seulement saisi "Clim". C'est aussi pour ce genre de défaut qu'il faut externaliser les attributs répétitifs.

    Un exemple...

    Règle de gestion :
    Un véhicule peut avoir plusieurs options et une option peut s'appliquer à plusieurs véhicules.

    MCD :
    Véhicule -0,n----Avoir----0,n- Option

    Tables :
    Vehicule (vhc_id, vhc_id_modele, vhc_annee...)
    Option (opt_id, opt_libelle...)
    Avoir (avr_id_vehicule, avr_id_option)

    Remplissage des tables :
    Vehicule (vhc_id, vhc_id_modele, vhc_annee...)
    1, 1, 2006
    2, 1, 2008
    3, 2, 2009

    Option (opt_id, opt_libelle...)
    1, 'Climatisation'
    2, 'Peinture métallisée'

    Avoir (avr_id_vehicule, avr_id_option)
    1, 1
    1, 2
    2, 2
    3, 1

    C'est de cette façon qu'il faut modéliser les données.
    Et avec ce modèle, si dans l'interface de recherche, tu donnes la liste des options existantes en BDD, tous les véhicules ayant la climatisation seront retournés par le SGBD.

    Attention ! Ne suit pas ce petit exemple à la lettre ! Ton besoin est beaucoup plus complexe que ça.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Oui j'ai cherché mais je n'ai rien trouvé, mais vous m'avez beaucoup aidé.

    Pour les catégories et model et marque de la voiture j'ai pensé à deux solution (est ce qu'il y a mieux je ne sais pas) mais je ne sais pas c'est quoi la meilleure :
    1)
    voiture(id_voiture, id_categorie, id_marque, id_model, prix, Km, ....)
    categorie(id_categorie, categorie)
    marque(id_marque, marque)
    model(id_model, model)
    exemple :
    voiture(1, 1, 2, 4, 3800€, 70000Km,…)
    categorie(1, break)
    marque(2 , Peugeot)
    model(4,206)

    2)
    voiture (id_voiture, id_mod_cat_marq, prix, Km, ....)
    mod_cat_marq(id_mod_cat_marq, categorie, marque, model)
    exemple :
    voiture (1, 1, 3800€, 70000Km,…)
    mod_cat_marq(1, break, Peugeot, 206)

    Merci par avance,

  7. #7
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Ni l'un ni l'autre en fait !
    La première solution est la plus proche de la bonne.

    Règles de gestion :
    1) Une marque propose plusieurs modèles et un modèle n'est proposé que par une seule marque.
    2) Une voiture est d'un seul modèle et un modèle peut qualifier plusieurs voitures.

    MCD1 :
    Marque -1,n----Proposer----1,1- Modele

    MCD2 :
    Modele -0,n----Qualifier----1,1- Voiture

    On réunit les deux MCD :
    Marque -1,n----Proposer----1,1- Modele -0,n----Qualifier----1,1- Voiture

    Et on voit qu'on peut accéder à la marque de la voiture via le modèle.

    Tables :
    Marque (mrq_id, mrq_nom)
    Modele (mdl_id, mdl_id_marque, mdl_nom...)
    Voiture (vtr_id, vtr_id_modele...)

    Quelle est la marque de la voiture n° 123 ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT DISTINCT mrq.mrq_nom
    FROM Marque mrq
    INNER JOIN Modele mdl ON mdl.mdl_id_marque = mrq.mrq_id
        INNER JOIN Voiture v ON v.vtr_id_modele = mdl.mdl_id
    WHERE v.vtr_id = 123
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Ok, je commence à voir les choses comme il faut
    c'est trés gentil
    Merci, beaucoup

Discussions similaires

  1. Modeliser site vente en ligne
    Par brigade dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 20/11/2008, 12h17
  2. création site vente en ligne
    Par brigade dans le forum Général Conception Web
    Réponses: 10
    Dernier message: 01/11/2008, 00h08
  3. BDD achats, ventes, commandes et stocks
    Par squinny dans le forum Modélisation
    Réponses: 3
    Dernier message: 27/10/2007, 20h13
  4. [MySQL] Accès BDD Site Distant
    Par Stochastic dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/05/2006, 12h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo