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

Langage SQL Discussion :

Gestion des articles pour un site e commerce


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 707
    Par défaut Gestion des articles pour un site e commerce
    Bonjour,

    Pouvez-vous m'expliquer comment sont gérés les articles en base de données pour un site e commerce.

    en effet, les anciennes commandes doivent conserver le prix, l'article au moment de l'achat.
    mais les prix des produits évoluent et donc ils sont mis à jour pour les futurs commandes...

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 134
    Par défaut
    Il faut une table de l'historique des prix des articles.
    Sa structure est simple : (Id_Article, Date_Debut, Prix)Date_Debut est la date à partir de laquelle le nouveau tarif est appliqué.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 430
    Par défaut
    Une autre solution est de valoriser les lignes de commande, en ajoutant une colonne pour le prix (et pourquoi pas aussi une pour la remise) dans la table des lignes.

    Tatayo.

  4. #4
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    C'est la solution de tatayo la plus commune, surtout dans les logiciels de gestion commerciale.

    Car si sur un site e-commerce, on a rarement des remises et tarifs manuels, il n'est pas rare dans un ERP d'avoir des tarifs négociés à chaque commande.
    A ce moment, on ne peut pas se contenter de stocker l'historique des tarifs, car deux commandes passées le même jour par le même client peuvent tout à fait être valorisées de manière différente.

    C'est aussi la méthode la plus simple à relire : tous les éléments nécessaires à l'édition de la commande sont stockés directement dans la commande. Mais aussi la solution la plus pérenne : si demain on purge les anciens tarifs, on peut le faire sans purger les commandes de l'époque, et surtout, les commandes restent valorisées correctement.

    En revanche, c'est ce qui prend le plus de place en base.
    Cela implique aussi de la redondance : donc en cas d'erreur de tarifs, la correction est tout de suite bien plus compliquée.
    Aussi, le prix applicable à une date donnée est une donnée qui peut être déduite à partir de l'article et de la date. Ainsi, il ne faudrait normalement pas la stocker.

    C'est, je pense, la dénormalisation la plus courante et la mieux tolérée, dans la mesure où elle a tout de même plus d'avantages que d'inconvénients.

  5. #5
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2019
    Messages
    707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2019
    Messages : 707
    Par défaut
    merci à tous pour vos réponses !

  6. #6
    Membre Expert
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Septembre 2016
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2016
    Messages : 956
    Par défaut
    Citation Envoyé par StringBuilder Voir le message
    Aussi, le prix applicable à une date donnée est une donnée qui peut être déduite à partir de l'article et de la date. Ainsi, il ne faudrait normalement pas la stocker.
    C'est, je pense, la dénormalisation la plus courante et la mieux tolérée
    En quoi serait-ce une structuration non normale ?

  7. #7
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Michel.Priori Voir le message
    En quoi serait-ce une structuration non normale ?
    Car on duplique de l'information, qu'on pourrait (normalement, aux exceptions près) simplement déduire en consultant la table de tarifs.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] relation pour des produits d'un site e-commerce
    Par krakatoa dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 11/06/2019, 11h49
  2. Avis Site web gestion des stocks pour particulier
    Par Chuck 3.50 dans le forum Mon programme
    Réponses: 1
    Dernier message: 04/10/2018, 10h36
  3. Gestion des articles en multi-sites
    Par bogacidre dans le forum SAGE
    Réponses: 3
    Dernier message: 10/09/2013, 11h43
  4. gestion des articles dans mon site intranet
    Par souminet dans le forum Débuter
    Réponses: 1
    Dernier message: 09/05/2009, 12h51
  5. Gestion des modifications pour un enregistrement
    Par Pascal Jankowski dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/03/2004, 14h09

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