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