Bonjour à tous
Je travaille sur une base Oracle 10g et je rencontre le pb suivant sur une requête SQL:
J'ai une table tab_A avec une clé PK_A unique et une colonne col_A que je souhaite mettre à jour.
J'ai une autre table tab_B avec une clé PK_B unique et une colonne col_B qui contient les valeurs à récupérer sur la table tab_A.
J'ai une 3ème table tab_C qui fait la liaison entre les 2 1ères avec une colonne FK_A et une autre colonne FK_B. Je précise que cette table peut contenir des lignes avec une même FK_B pour des FK_A différentes, c'est sans doute cela qui fait planter ma requête.
J'obtiens un message:
ORA-01427 : sous-interrogation ramenant un enregistrement de plus de 1 ligne
sur la requête suivante:
UPDATE tab_A
SET tab_A.col_A =
SELECT tab_B.colB
FROM tab_C, tab_B
WHERE tab_A.PK_A = tab_C.FK_A
AND tab_C.FK_B = tab_B.PK_B
Si quelqu'un a une idée, merci d'avance...
Partager