Bonjour tout le monde et bonne journée .
Voilà j'ai un projet d'école, plus ou moins pour le fun, et j'ai un gestion de stock à faire.
Pour l'instant, ma reflexion (Prôôôfonde) a abouti à ce schéma MCD :
- La table stockCarburant est censée être en permanence à jour du calcul des stocks, afin d'être requêtée dans l'application, en AJAX.
- Les deux tables venteCarburant et reassortCarburant sont des "journaux" statiques -et inaccessibles en modification et suppression(sauf action spéciale)- de mouvements de stocks, avec donc une colonne date, ils seront accessibles en lecture dans l'application. Admettons que j'ai 5 stations services, et un total de 30 citernes, ces tables vont (en théorie) s'alourdir très rapidement de dizaines de lignes... Ces tables auraient également une valeur en cas de litige.
En fait, maintenant, je prévoie de créer 2 triggers :
1 qui s'exécute lors d'une vente et qui décrémente le stock de x litres de carburant.
1 qui s'exécute lors du remplissage de la citerne et qui incrémente le stock de x litres de carburant.
Tout cela toujours en fonction de idciterne, parce que il y a des dizaines de citernes différentes.
Les deux triggers sont placés sur les tables ventecarburant et reassortcarburant et pointent sur la table stockcarburant.
Cette logique vous parait-elle bonne ?
Mon but étant d'avoir une table renseignant les stocks toujours à jour, sans avoir à coder ce système avec du JS ou du PHP, ou même du JAVA.
Pour l'instant, je n'ai pas encore réflechi à la syntaxe des triggers mais j'ai entendu parler de "NEW" et de "OLD", mais je flippe ... Ca à l'air sacrément dur !
je précise que les champs date sont en Varchar parce que je travaille avec des objets date en JS, mais ça on s'en fout vis-à-vis du post .
Faut-il ajouter un 3 ème trigger qui signale si le volume disponible est dépassé ? Merci
Partager