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

 MySQL Discussion :

Gestion de stock via SGBD MySQL


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2019
    Messages : 3
    Par défaut Gestion de stock via SGBD MySQL
    Bonjour à tous et à toutes

    Je suis débutant en gestion de base de données.
    Et dans la cadre d'un projet, je dois créer une base de données permettant la gestion du stock d'un entrepôt.

    J'ai donc commencé par créer la base de donnée, ainsi que 3 tables qui correspondent aux Stocks, Achat, Vente

    Nom : diagram.jpg
Affichages : 9349
Taille : 224,5 Ko

    L'objectif est de permettre de connaitre le stock au jour J. Pourvoir ajouter les achats passé au fournisseurs dans le stock et de pouvoir retirer du stock les ventes réalisés auprès des clients.

    Ainsi je me pose plusieurs question :

    -Si les colonnes de mes tables sont suffisantes pour faire ce que je veux ? (Je commence avec le minimum nécessaire)
    -Si les relations que j'ai mis entres mes tables sont adéquate ?
    -Enfin l'action d'ajouter / retirer des produits du stock seront réalisées via des snippets (requêtes préenregistrés, si j'ai bien compris) est ce possible ?

    Sur quelle thématique me conseillez vous de me renseignez sachant que mes connaissances en SQL sont basique. Afin de pouvoir mener à bien ce projet.
    L'objectif étant réellement de faire d'abord quelques chose de simple mais qui répond à mon attente.

    Si je pouvais avoir un peu d'éclairage de la part de personne expérimenté à propos de ma problématique, j'en serait grandement reconnaissant.
    Merci d'avance

    Cordialement

  2. #2
    Expert confirmé
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 932
    Par défaut
    Bonjour,
    quelques remarques en vrac:
    - le stock est par nature variable et résulte de la différence entre achats et ventes d'un produit identifié: il n'y a pas de table produit... (mais la table stock serait un bon candidat)
    - quantité est parfois en INT et parfois en VARCHAR : ça va pas être simple pour les calculs
    - 1 achat concerne 1 produit et 1 seul, 1 achat est fait à une certaine date et on achète une quantité définie: le reste est superflu a priori (compte tenu de ton cahier des charges très light)
    - même chose pour 1 vente
    - pour le prix: si tu dois (cahier des charges) pouvoir différencier le prix d'achat du prix de vente (par ex calcul de bénéf. ou évolution des tarifs), alors le prix d'achat sera dans la table achat et le prix de vente dans celle des ventes ET pas besoin de prix dans la table produit (stock). A contrario, pourquoi s'encombrer du prix?
    - catégorie ? pas facile de se prononcer... mais si plusieurs produits peuvent avoir la même catégorie, il faudra 1 table dédiée [id_categorie, libelle_categorie]
    - même remarque pour la marque
    - pour l'emplacement: ne sachant pas de quoi il s'agit, pas de remarque, mais attention si le système de repérage est matriciel genre numéro dans 1 allée comme chez Ikea !

    Voilà, bon courage, et n"hésite pas à proposer la V2 de ton modèle

    Dernière recommandation : plein de tutos concernant la modélisation sur Developpez te seront très profitables pour avoir de bon réflex

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2019
    Messages : 3
    Par défaut
    Bonjour qi130, Tout d'abord je tenais à te remercier pour ton aide.

    J'ai donc fait quelques petites modifications concernant,la table stock qui devient produit. Et les colonnes ont été modifiés dans les différentes tables comme tu peux le voir :

    Nom : diagram2.jpg
Affichages : 5368
Taille : 236,9 Ko

    Je vais faire quelques retour concernant tes judicieuse remarques:

    - 1 achat concerne 1 produit et 1 seul, 1 achat est fait à une certaine date et on achète une quantité définie: le reste est superflu a priori (compte tenu de ton cahier des charges très light)
    Je me demandais s'il était possible de faire les choses autrement. A la place de faire une requête achat/vente pour chaque produit, est-il possible d'avoir une requête qui me présente l'ensemble des produits. Il me suffira donc de rentrer les quantités pour les différents produits que ce soit pour l'achat et la vente ?

    L'idée serait donc d'avoir une seul requête pour les achats et une autre pour les ventes. J'aurais seulement à modifier la quantité des produits que ça soit pour la requête achat et la requête vente.

    Pour reprendre tes termes il faudrait qu'un achat concerne plusieurs produits. J'imagine qu'il faut créer un table intermédiaire Bon d'achat qui regroupe les produits achetés et une table intermédiaire bon de vente qui regroupe les différents produits vendus.

    Je sais pas si j'ai été bien clair

    Pour ce qui est l'emplacement, je crois que ça correspond à ce qu'on appelle un repérage matriciel. Nos emplacement varient de A-001-001-001 à D-001-001-001.
    chaque bloque correspond à une allée, étage, position.

    Encore merci pour ton aide, ça m'aide énormément à y voir plus clair.

    PS: je suis entrain de voir les tuto par rapport à le modélisation

  4. #4
    Expert confirmé
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 932
    Par défaut c'est mieux !
    indépendamment du cahier des charges (i.e que doit permettre de faire ou calculer l'application), il existent de multiples possibilités pour le modèle cible physique (= les tables)

    Mais on n'est pas encore à ce niveau... il faut en 1er lieu obtenir le modèle conceptuel basé sur les entités et leurs associations. Il sera toujours temps de dénormaliser au niveau physique (si besoin).

    D'après ce que tu montres, je détecte plusieurs entités:
    1. produit
    2. catégorie
    3. marque
    4. achat
    5. vente
    6. emplacement (c'est subtil)


    Ensuite, il y a des associations entre ces entités, puis les cardinalités:
    • produit-catégorie: 1 produit n'appartient qu'à 1 catégorie, mais 1 catégorie peut comporter plusieurs produits - par exemple pour la catégorie "pile" on aura pile de 1,5 volt, de 9 volts, etc.. la cardinalité résultante est donc : [produit]-(1,1)-(1,n)-[catégorie]
    • produit-achat: même approche, 1 produit est acheté (1,n) fois et 1 achat concerne (1,1) produit
    • produit-vente: comme les achats
    • produit-emplacement: 1 produit est situé à 1 et 1 seul emplacement, et 1 emplacement ne contient qu'1 et 1 seul produit (sauf si le magasinier fait mal son boulot). La cardinalité résultante est donc [produit]-(1,1)-(1,1)-[emplacement]
    • etc.


    Ce n'est que lorsque tout ça est posé qu'on peut envisager de passer aux tables et relations.
    Les entités et leurs attributs deviennent les tables et leurs colonnes.
    Les associations deviennent des relations avec en général l'approche suivante:
    • 1 association (1,1)-(1,1) permet d'intégrer les attributs d'une entité dans l'autre
    • 1 association (1,1)-(1,n) permettra d'avoir dans la table de gauche une FK sur celle de droite
    • 1 association (1,n)-(1,n) devient une table de relation dont la PK est composée des colonnes clés des tables gauche et droite


    NB: si tu n'es pas familier avec la notation (n,m): le 1er terme se détermine par la question "combien au minimum", et le 2nd par "combien au maximum".
    ainsi: combien de catégorie concerne un produit donné? A minima 1 et au maxi 1 => (1,1)

    Garde à l'esprit que les explications qui précèdent sont simplistes et vont au plus rapide (je ne veux pas m'attirer les foudres des Maitres du Relationnel présents sur Developpez )

    Essaie de mettre ton modèle d'aplomb par rapport à tout ça.

    il faudrait qu'un achat concerne plusieurs produits
    Là, je te suggère de parler de commande afin de regrouper plusieurs achats ou ventes.
    C'est peut-être 1 entité supplémentaire, mais encore une fois, sans cahier des charges, pas facile de se prononcer.

    Bon courage.

  5. #5
    Membre Expert
    Homme Profil pro
    tripatouilleur de code pour améliorer mon quotidien boulistique
    Inscrit en
    Février 2008
    Messages
    946
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : tripatouilleur de code pour améliorer mon quotidien boulistique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2008
    Messages : 946
    Par défaut
    Bonjour à toutes et à tous

    Cette discussion ne concerne pas MySQL.
    Il s'agit d'interrogations sur la conception de la base de données.

    Il faudrait mieux se pencher sur le forum Merise pour avoir plus de réponses.

    Bonne journée.

    Pierre

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2019
    Messages : 3
    Par défaut pour faire suite
    La modélisation mérise à été faite c'est le passage du modèle conceptuel des données à l'interface de workbench qui me fait douter.

    mes règles de gestions sont les suivantes:

    -un produit peut ne pas être vendu ou vendu plusieurs fois
    -une vente concerne un ou plusieurs produits

    -une réception concerne un ou plusieurs produits.
    -un produit peut ne pas être reçu une ou plusieurs fois reçu.

    -un catégorie peut avoir un ou plusieurs produits
    -un produit n'a qu'une seul catégorie

    -un fournisseur peut fournir plusieurs produits
    -un produit n'est fournis que par un fournisseur

    de cela en découle mon modèle conceptuel des données avec les cardinalités:

    Nom : mcd.jpg
Affichages : 4425
Taille : 106,0 Ko


    une fois ce travail fait c'est la transposition à mysql qui me pose soucis.
    J'ai un peu de mal avec les relations n,n . je crois pas qu'il y a tout les attributs qu'il faut .
    ma modélisation est pleinement perfectible et j'aimerais bien connaitre votre avis sur la possibilité de l'améliorer.

    le modèle mysql est espagnol et la traduction n'est pas mot à mots mais le modèle est le même


    Nom : Capturesgbd.JPG
Affichages : 4385
Taille : 78,0 Ko



    Merci pour vos commentaires

Discussions similaires

  1. Gestion des stocks via Access
    Par Akametique dans le forum Modélisation
    Réponses: 3
    Dernier message: 26/06/2019, 10h27
  2. Réponses: 4
    Dernier message: 02/02/2018, 15h33
  3. requete mysql pour gestion des stocks
    Par arthson dans le forum Requêtes
    Réponses: 4
    Dernier message: 30/01/2013, 13h08
  4. Quel SGBD choisir pour la gestion de stock pour des laboratoires ?
    Par waspy59 dans le forum Décisions SGBD
    Réponses: 13
    Dernier message: 25/12/2007, 06h31
  5. [MySQL] Gestion de stock, garage
    Par issamaziz dans le forum Langage SQL
    Réponses: 2
    Dernier message: 19/05/2006, 10h17

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