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

InterBase Discussion :

UPDATE sur plusieurs lignes avec jointure [Débutant(e)]


Sujet :

InterBase

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    avril 2004
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 36
    Points : 34
    Points
    34
    Par défaut UPDATE sur plusieurs lignes avec jointure
    bonjour

    j'aimerai faire une mise à jour de ma base de donnée sur plusieurs lignes avec jointure

    mais j'ai cela en retour :

    Informations supplémentaires*: Token unknown - line 3, char 1

    FROM

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    UPDATE AAA_LOCWEB
    SET LOCWEB_Action = '1',LOCWEB_Stock = STC_QTE
    FROM AGRSTOCKCOUR   INNER JOIN AAA_LOCWEB
    ON STC_ARTID = LOCWEB_Art_ID
    AND STC_COUID = LOCWEB_CouleurID
    AND STC_TGFID = LOCWEB_TailleID
    WHERE STC_QTE <> LOCWEB_Stock;

    j'arrive à faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     UPDATE AAA_LOCWEB 
    SET LOCWEB_Action = '1'
    WHERE LOCWEB_Art_ID     =  0
    AND  LOCWEB_CouleurID       =  0
    AND  LOCWEB_TailleID        =  0
    même avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE AAA_LOCWEB
    SET LOCWEB_Action = '1';



    D'avance merci pour tout aiguillage

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Ingénieur d'études décisionnel
    Inscrit en
    mai 2002
    Messages
    8 819
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 8 819
    Points : 29 358
    Points
    29 358
    Par défaut
    Bonjour,

    Comme le précise le message d'erreur, avec Interbase la commande UPDATE n'autorise pas de clause FROM.

    Mais on peut s'en passer, même si c'est un peu plus lourd :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    update  AAA_LOCWEB  LOC
    set     LOC.LOCWEB_Action   = '1'
        ,   LOC.LOCWEB_Stock    = 
                (   select  STC.STC_QTE
                    from    AGRSTOCKCOUR    STC
                    where   STC.STC_ARTID   = LOC.LOCWEB_Art_ID
                        and STC.STC_COUID   = LOC.LOCWEB_CouleurID
                        and STC.STC_TGFID   = LOC.LOCWEB_TailleID
                )
    where   exists
            (   select  1
                from    AGRSTOCKCOUR    STC
                where   STC.STC_ARTID   = LOC.LOCWEB_Art_ID
                    and STC.STC_COUID   = LOC.LOCWEB_CouleurID
                    and STC.STC_TGFID   = LOC.LOCWEB_TailleID
                    and STC.STC_QTE     <> LOC.LOCWEB_Stock
            )
    ;
    Requête non testée, je n'ai pas d'Interbase sous la main
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    avril 2004
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2004
    Messages : 36
    Points : 34
    Points
    34
    Par défaut
    Super Merci beaucoup

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 07/07/2011, 08h51
  2. update sur plusieurs lignes avec table temporaire
    Par -=mateo=- dans le forum SQL
    Réponses: 3
    Dernier message: 23/12/2010, 14h40
  3. [SQL] update sur plusieurs lignes
    Par Hurin dans le forum Langage SQL
    Réponses: 8
    Dernier message: 04/08/2008, 16h37
  4. Update sur plusieurs lignes
    Par JOUCHET dans le forum Oracle
    Réponses: 1
    Dernier message: 20/05/2006, 18h37
  5. Bouton radio sur plusieur ligne avec Border layout
    Par Bason_sensei dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 03/05/2006, 16h03

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