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

Requêtes et SQL. Discussion :

prob requete mise a jour


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 31
    Points : 14
    Points
    14
    Par défaut prob requete mise a jour
    bonjour,

    j'ai un probleme de requete de mise a jour et je n'arrive pas a trouver l'erreur....
    alors voila,
    j'ai 2 tables... une livraison et l'autre produits...
    dans la table livraison j'enregistre les produits livré à l'aide d'un formulaire basé sur la table produits avec des champs en plus (quantité, date livraison, et date enregistrement)
    dans la table livraison il m'enregistre que les Id de ma table produit

    de la, à l'aide d'un bouton je vroudrai qu'un requete mise a jour s'effectue, en prenant la chanps de la quantité livré(dans ma table livraison), et le champ de la quantité en stock (dans ma table produit) et le tous en fonctions du meme id et de la date d'enregistrement.

    voila ce que j'ai fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE tab_prod_nomm INNER JOIN tab_livraison ON tab_prod_nomm.ref_prod_nomm = tab_livraison.ref_prod_nomm SET tab_livraison.stock = tab_prod_nomm.stock+tab_livraison.stock
    WHERE (((tab_livraison.Date_enreg)=Date()));
    mais je systeme me dis qu'il va mettre a jour mon champs et quand je dis oui il m'envoie cette erreur...
    Micro...access, n'arrive pas a mettre a jour tous les enregistrements de la requete mise a jour
    .... n'a pas mis a jour 0 champs à cause d'un echec de conversation type, 0 enregistrement suite a la violation clé, 0 enregistrement suite violation verrou, et 1 enregistrement à la suite violation regle de validation
    donc rien ne se met a jour, et pourant les champs de destination on les meme propriétées....

    merci d'avance...

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Points : 79
    Points
    79
    Par défaut
    bonjour

    c'est pas une requete de mise à jour que tu dois faire mais une requete d'ajout.
    un produit effectue plusieurs livraisons je suppose, donc il y a plusieurs enregistrement de livraison pour un meme produit.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    merci de ta réponse
    oui tu a raison, il y a plusieur enregistrement en livraison du produit mais je peu qu'il m'additionne le dernier avec le critère date...
    je viens d'essayer en fesant une requete ajout, et il me balance la mm erreur en boite de dialogue.
    mes deux table sont liées.. est ce que ça joue dans l'erreur??

    pourant quant je met ma requete en feuille de donnée il va bien chercher les bonne données a ajouter....

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 94
    Points : 79
    Points
    79
    Par défaut
    j'ai du mal à saisir comment tu veux représenté ton stock en fait. tu as un champs stock dans ta table produit que tu veux mettre à jour c ça? ou c dans la table livraison que tu veux enregistrer le stock sur le derniér enregistrement en date pour un produit?

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    en fait je veu mettre a jour le champs stock de la table produit en fonction des arrivages de la livraison... le champs stock de la table livraison correspond au quantité livrées...
    j'ai mis le meme nom au deux champs car je croyais que c'était l'erreur....

    et comme dans la table livraison il y aura plusieur fois le meme produit, mais pa à la meme date, je veu qu'il ajoute juste la dernier ligne enregistrer dans la table livraison... donc le critère date...

  6. #6
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Bonjour,

    Si grace à ton bouton tu pouvait faire une somme de tout tes produits livrées puis les soustraire à ta colone...

    Aurais tu un exemple concrets STP, ce serait plus simple que d'essayer d'imaginer, non...

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    bonjour, merci de ta reponse...

    alors le but avec mon bouton c'est de l'additionner à ma colonne lors de la livraison (puisque je rentre une quantité de produit en stock) et non pas de la soustraire.
    alors en exemple concret (j'ai simplifier les champs car les autres correspond aux catégories et autres détails produits):

    tab_prod_nomm:
    ref_prod_nomm
    produits
    tarif
    stock

    dans cette table j'enregistre (à laide d'un formulaire) mes produits référencés.
    Je n'utilise pas la champs stock dans ce formulaire.

    tab_livraison:
    ref_livraison
    produit
    tarif
    stock_livre

    dans cette table j'enregistre (à l'aide d'un formulaire ce basant sur la tab_prod_nomm) mes produits livré en utilisé le champs stock_livre comme valeur de quantité livré du produit.

    donc avec le bouton du formulaire de livraison je voudrais qu'il m'additionne les champs stock_livre (tab_livraison) avec le champ stock (tab_prod_nomm)

    j'ai donc essayer en fesant une requete mise a jour....

    voila ce que j'ai fais

    Code :
    UPDATE tab_prod_nomm INNER JOIN tab_livraison ON tab_prod_nomm.ref_prod_nomm = tab_livraison.ref_prod_nomm SET tab_livraison.stock = tab_prod_nomm.stock+tab_livraison.stock
    WHERE (((tab_livraison.Date_enreg)=Date()));
    mais je systeme me dis qu'il va mettre a jour mon champs et quand je dis oui il m'envoie cette erreur...

    Citation:
    Micro...access, n'arrive pas a mettre a jour tous les enregistrements de la requete mise a jour
    .... n'a pas mis a jour 0 champs à cause d'un echec de conversation type, 0 enregistrement suite a la violation clé, 0 enregistrement suite violation verrou, et 1 enregistrement à la suite violation regle de validation

    donc rien ne se met a jour, et pourant les champs de destination on les meme propriétées....
    mais je ne comprend pas l'erreur de la boite de dialogue.....

    j'espere que mon exemple vous permettera de m'aider...

  8. #8
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Points : 8 678
    Points
    8 678
    Par défaut
    Donc tu ferais par jour.
    Tu additionne toutes tes livraisons (Stock livré).
    Et tu additionne le résultat à ta colonne Stock.

  9. #9
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    bonjour,

    en fait apres avoir refouiller mon code..... car mes erreurs ne me semblaient pas logique...
    je m'explique:
    en fait ma première idée etait la bonne.. faire une mise a jour...
    le probleme c'est que comme je suis un vrai novice en tant que access.... je résoner un peu trop en Mysql...j'ai inverser les tables dans ma requete

    voici mon erreur...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE tab_prod_nomm INNER JOIN tab_livraison ON tab_prod_nomm.ref_prod_nomm = tab_livraison.ref_prod_nomm SET tab_livraison.stock = tab_prod_nomm.stock+tab_livraison.stock
    WHERE (((tab_livraison.Date_enreg)=Date()));
    il fallait donc en fait que j'inverse les tables....

    bref.. merci de vos réponses.....

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

Discussions similaires

  1. Requete Mise A Jour UPDATE
    Par Teddy63 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 29/05/2007, 10h15
  2. [Requete]Mise a jour d'un champ
    Par le_gueux90 dans le forum Requêtes et SQL.
    Réponses: 13
    Dernier message: 11/05/2007, 12h52
  3. Est-ce Cela Peut Fonctionner Requetes Mise A Jour
    Par dauphin34000 dans le forum Oracle
    Réponses: 22
    Dernier message: 28/04/2006, 14h08
  4. [VBA] prob de mise a jour gotfocus et lostfocus
    Par Christophe93250 dans le forum Access
    Réponses: 7
    Dernier message: 23/04/2006, 20h03
  5. Probleme avec une requete mise a jour
    Par mael94420 dans le forum ASP
    Réponses: 2
    Dernier message: 08/03/2006, 21h56

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