Bonjour,
J'ai les trois tables suivantes :
Etudiant :
- ETD_ID
- ETD_MATRICULE
Avec les données suivantes :
ETD_ID | ETD_MATRICULE
1 | ETD MAT 01
2 | ETD MAT 02
3 | ETD MAT 03
Enseignant :
- ENS_ID
- ENS_MATRICULE
Avec les données suivantes :
ENS_ID | ENS_MATRICULE
1 | ENS MAT 01
2 | ENS MAT 02
Je souhaite alimenter la table suivante à partir des deux tables précedentes :
ENS_ETD :
- ENS_ID
- ETD_ID
Elle doit contenir les données suivantes :
ENS_ID | ETD_ID
1 | 1
1 | 2
1 | 3
2 | 1
2 | 2
2 | 3
Pour chaque ID enseignant on doit trouver tous les ID étudiants.
J'ai la requête INSERT suivante :
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 INSERT INTO ENS_ETD(ENS_ID, ETD_ID) SELECT (SELECT MAX(ENS_ID) FROM Enseignant WHERE ENS_ID NOT IN (SELECT ENS_ID FROM ENS_ETD)), (SELECT MAX(ETD_ID) FROM Etudiant WHERE ETD_ID NOT IN (SELECT ETD_ID FROM ENS_ETD))
Cette requête me retourne : Cannot insert the value NULL into column ...
NB : c'est le cas où le nombre d'énseignants est supérieur au nombre d'élève.
Merci d'avance pour votre aide
Partager