Bonjour à tous,
Je suis en train de faire la migration d'une base que je n'ai pas conçu.
A la migration, je galère pas mal pour un truc que je pensais simple. Voici le souci :
J'ai 2 tables :
- T_organismes qui contient les différents organismes auquel je fait appel pour des formations.
Elle contient 2 colonnes : 'num_organisme' qui est sa clé primaire et 'nom' qui est le nom de l'organisme
- T_formations qui contient la liste des formations dispensées par ces organismes.
Elle contient 2 colonnes : 'organisme' qui contient le nom de l'organisme et num_organisme qui pour l'instant ne contient rien mais qui devrait contenir le ' num_organisme' associé.
Voici le problème : Comment remplir la colonne 'num_organisme' de la table T_formations avec le num_organisme de T_organisme en faisant la jointure entre 'nom' et 'organisme'
Voici la requête que j'ai faite et qui ne fonctionne pas :
Pour éviter le distinct, j'ai également essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 UPDATE T_Formations SET num_organisme = (SELECT distinct T_organismes.num_organisme FROM T_organismes INNER JOIN T_formations ON T_organismes.nom = T_formations.organisme)
J'ai le message d'erreur suivant : "L'operation doit utiliser une requete qui peut être mise à jour"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 UPDATE T_Formations SET T_Formations.num_organisme = (SELECT T_organismes.num_organisme FROM T_organismes, T_formations WHERE T_organismes.nom =T_formations.organisme)
Je réalise cette migration d'access 2000 vers access 2000 mais en passant par le DTS de SQL server 2000
L'aide d'access me renvoit à une erreur de ce type :
"Vous avez essayé d'exécuter une requête qui tente de mettre à jour un champ non modifiable. Par exemple, la requête a été créée de façon telle que vous essayez de mettre à jour un champ du côté un d'une relation un-à-plusieurs."
C'est effectivement une relation de 1 à plusieurs mais c'est le coté plusieurs que j'essaye de mettre à jour.
Merci d'avance,
Grégory
Partager