Foreign key valable?

Fermé
Xei Messages postés 156 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 21 février 2009 - 24 juin 2008 à 15:37
Xei Messages postés 156 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 21 février 2009 - 24 juin 2008 à 16:51
Bonjour,

Je voulais savoir comment on peut vérifier si un foreign key a fonctionné, je m'explique :
J'ai deux table, l'un s'appelle ecole, dedans il y a plusieurs champs dont un qui s'appelle directeur.
Mon autre table est enseignant ou dedans sont stocké donc les enseignant. Certains enseignant sont également directeur.
J'ai donc fait un foreign key dans la table école pour mettre dans le champs directeur un id_enseignant, mais je n'arrive pas a savoir comment vérifier si cela a vraiment marché. J'espère avoir été assez clair dans mes explication.

Merci d'avance à tout le monde.
A voir également:

7 réponses

Xei Messages postés 156 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 21 février 2009 56
24 juin 2008 à 16:09
Personne n'a d'idée a se sujet?
0
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 384
24 juin 2008 à 16:19
Bonjour Xei,

La définition d'une Foreign Key est une contrainte, ce qui veut dire que lorsque tu voudras insérer un élément dans ta table école, SQL va vérifier que la valeur dans la colonne directeur existe dans la table enseignant.

Cela répond à ta question ?

A plus
0
Xei Messages postés 156 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 21 février 2009 56
24 juin 2008 à 16:23
Et bien en fait pas trop lol, je t'explique mieux :

En fait avant tous sa, il y a un formulaire tu vois, et dans se formulaire on doit choisir une école, ensuite (là est tout mon problème ^^) lorsque je vais cliquer sur envoyer, il y aura plusieurs choix en fonction des champs rempli ou pas dans le formulaire.

Donc par exemple si tel champs est vide alors il faut envoyer un mail au directeur de l'école sélectionné dans le formulaire. Si par exemple je choisi école1 alors quan je ferait envoyé, c'est au directeur dépendant de l'école1 qui recevra le mail.

Donc c'est pour cela qu'il faut que je joigne la table enseignant où il y a toute les info des prof (mail...) pour pouvoir en fonction de l'école récupéré les info sur le directeur tu comprend ce que je veux dire?
0
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 384
24 juin 2008 à 16:33
Bonjour,

Il faut alors exécuter la requête suivante
SELECT * from enseignant
where id_enseignant = directeur (de la table ecole)
après le choix de l'école

A plus
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Xei Messages postés 156 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 21 février 2009 56
24 juin 2008 à 16:38
D'accord et donc cette requête permet de faire ce que je veux?
J'ai du mal à comprendre, tu peux m'expliquer en deux trois mots stp.

Merci à toi Christounet !:)
0
Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 384
24 juin 2008 à 16:49
Bonjour,

Une fois que tu as choisi ton école, tu prends toutes les informations de la table enseignant où l'identification de l'enseignant est égal à l'identification du directeur, en autre son adresse mail.
Tu peux aussi utiliser la requête suivante
select * from ecole a , enseignant b
where a.directeur = b.id_enseignant

Cette requête permets avec un seul select d'avoir toutes les informations de la table ecole suivies de toutes les informations de la table enseignant. Cela de permets de ne plus devoir exécuter l'autre requête après le choix de l'école.

Si tu as besoin de plus d'informations, n'hésite pas

A plus
0
Xei Messages postés 156 Date d'inscription mardi 20 mai 2008 Statut Membre Dernière intervention 21 février 2009 56
24 juin 2008 à 16:51
Ok Ok, je vais voir tous ça, merci de ton aide, si j'ai besoin d'un autre coup de main je te ferai signe, merci à toi, bonne fin de journée!:)
0