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 :

Modifier un champ pour tous les enregistrement d'une table [AC-2003]


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mai 2009
    Messages : 17
    Points : 12
    Points
    12
    Par défaut Modifier un champ pour tous les enregistrement d'une table
    Bonjour.

    Je suis actuellement en train de réaliser un projet sous Access, et j'aurais besoin de savoir comment faire un update d'un attribut Prix pour chaque enregistrement d'une table.
    (En gros j'ai une table produit et je veux pouvoir augmenter ou diminuer de X% les prix pour chaque produit de la table.)
    Je ne vois pas trop comment boucler sur chaque enregistrement et faire l'update.

    Merci d'avance de votre aide.

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 191
    Points : 200
    Points
    200
    Par défaut
    Bonjour,

    je crois qu'un requête SQL du genre :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE LISTE
    SET LISTE.prix = LISTE.prix * (1 + (20/100))

    Pourrait faire l'affaire. La requête ci-haut augmenterait les prix de 20% partout dans la table. Il ne reste plus qu'à remplacer le 20/100 par ta valeur (ou une variable) et ça devrait fonctionner.

    Bonne journée!

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je ne vais pas te parler de l'aspect technique, mais de ce que tu veux faire.

    En effet, la mise à jour d'un prix de la sorte est dangereux en fonction des liaisons dans ta table.

    Exemple :

    Tu as des factures qui sont liées à cette table, si tu changes le prix et que tu ré édites une facture qui date de 2 mois, tu risques d'avoir les nouveaux prix et non les anciens , pas cool (bien sûr tout dépend de la structure de ta base).

    Dans ce cas ce qui est souhaitable est de mettre des dates de validités, le prix d'un produit est valable de la date X à la date Y.

    Bien sûr cela implique en amont d'intégrer cette notion de date dans la facturation pour faire le choix du bon prix.

    Je voulais donc insister sur ce point important

    Philippe

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mai 2009
    Messages : 17
    Points : 12
    Points
    12
    Par défaut
    Bonjour,

    Merci beaucoup de vos réponses.
    @al_bert :
    Je vais tester cette solution merci.

    @Philippe JOCHMANS :
    Merci de votre conseil, cependant mon projet étant juste une base de données de prix actuels des marchandises, il n'y a donc pas besoin de connaitre la valeur des produits à différentes périodes.

    Bonne journée.

    Edit : La requête marche très bien merci beaucoup.

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

Discussions similaires

  1. [AC-2013] Initialiser un champ pour tous les enregistrements
    Par Xof68 dans le forum VBA Access
    Réponses: 3
    Dernier message: 01/08/2013, 22h34
  2. Réponses: 4
    Dernier message: 27/07/2009, 12h15
  3. [AC-2003] Remplissage d'un champ pour tous les enregistrements
    Par oliv45 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 16/04/2009, 16h31
  4. comment faire pour supprimer tous les enregistrements d'une table
    Par sehing7 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 14/04/2009, 14h13
  5. Afficher tous les enregistrements d'une table
    Par bertrand_declerck dans le forum QuickReport
    Réponses: 2
    Dernier message: 08/07/2005, 08h35

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