|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() amine amine Inscription : mars 2010 Messages : 12 ![]() |
Bonjour,
je veut concevoir une application VB.Net/MySQL pour la gestion de stock. Sur la base j'ai deux tables Stock(Ref,Quantité)) Mouvement(Ref,Date, Quantité, entré/sortie) A chaque fois j'ai une entrée ou une sortie de stock j'insère la ligne correspondante dans la table mouvement . Les quantités dans la tables Stock doivent se mettre a jour conformément aux lignes ajoutés. J'ai deux choix (a ma connaissance) pour concevoir cette application: 1- Créer un trigger sur la table Mouvement qui met a jour les quantité de la table Stock 2- Gérer le problème avec des fonctions locales (dans l'application .Net) Un deuxième besoin c'est de déterminer est ce que le stock est "suffisant" ou non. Je dois avoir un fonction qui a comme entrée une liste des éléments (Ref,Qty) et qui renvoie une valeur booléenne pour dire est ce que le stock est suffisant ou non. Toujours le même soucis: ou mettre la fonction 1- Une fonction dans la base de donnée en PL/SQL 2- Une fonction locale en .Net qui charge la table stock entière et effectue la vérification. Merci d'avance pour vos conseils |
|
|
00
|
|
|
#2 | |||||
![]() ![]() |
Citation:
Citation:
Citation:
Il suffit de créer une requête de ce type pour savoir si la commande peut être satisfaite : Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Autoentrepreneur. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 ! |
|||||
|
10
|
|
|
#3 |
|
Invité de passage
![]() amine amine Inscription : mars 2010 Messages : 12 ![]() |
Bonjour,
Merci pour la réponse, mon majeur probleme c'est le temps d'allé retour de requetes non pas de point de vue performance mais Si par exemple un client veut lancer une commande , la panier est composé d'une liste de (Reference, Quantité), l'operation se deroule comme suit:
Ceci est shématisé dans le diagramme de séquence dans la piece jointe. Pourtant dans le cas ou on utilise des procedures sur le serveur(case2) l'intervalle t2-t1 est relativement court en plus on peut verrouiller le lignes en question. Qu'en pensez vous? |
|
|
00
|
|
|
#4 |
![]() ![]() |
C'est bien pour ça que le trigger est meilleur.
Tu lances la requête qui va insérer une nouvelle commande et le trigger vérifie que la quantité est disponible avant d'insérer la commande. Pendant ce temps, la table est bloquée pour les autres insertions. Par contre, si tu as un autre processus qui peut mettre à jour la table du stock, il faudrait aussi la bloquer pendant le trigger car il ne le fera pas tout seul.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Autoentrepreneur. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 ! |
|
10
|
Copyright © 2000-2013 - www.developpez.com