Bonjour,
Je rencontre une erreur lorsque j'essaie de mettre a jour plusieurs lignes d'une table.
J'ai les deux tables suivantes:
tble_Work --> WP,DESCRIP,PROGRAM
tble_Code --> CODE,CODEDESC,BREAKFILE
Le WP (Work package) de la table tble_Work correspond au CODE de la table tble_Code, ce qui me permet de lie les 2 tables:
Mon probleme est que dans la table tble_Work, le champ DESCRIP est vide pour certains WP. Alors que dans la table tble_Code j'ai bien une description pour tous les enregistrements du champ CODE (qui correspondent a mes WP de la table tble_work)
Je souhaiterais donc copier le contenu du champ CODEDESC dans le champ DESCRIP de ma table tble_work pour tous les WP/CODE.
J'utilise la requete suivante:
Mais j'obtiens l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 UPDATE tble_Work SET DESCRIP = (SELECT CODEDESC FROM tble_Code WHERE CODE IN (SELECT tble_Work.WP FROM tble_Work WHERE tble_Work.PROGRAM='62864074' and tble_Code.BREAKFILE = '4074WPL'))
En effet ma sous requete me retourne plusieurs valeurs puisque toutes mes descriptions sont differentes pour chaque WP/CODE...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Server: Msg 512, Level 16, State 1, Line 1 Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression. The statement has been terminated.
J'ai l'impression que cela n'est pas supporte par le UPDATE.
Est-ce que vous auriez une idee de la solution?
Par avance, Merci!
Partager