Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/01/2008, 19h38   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 54
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 54
Points : 12
Points : 12
Par défaut ajout d'une clé étrangere

bonjour tout le monde voila je cherche à créer une clé secondaire dans une table

(pour des raisons de simplicité j'ai supprimé ma table comme ca je la crée avec seulement ma clé secondaire cependant cela ne fonctionne pas

Code :
1
2
3
CREATE TABLE `COU_COURS` ( `COU_SALID` INTEGER NOT NULL ,
 PRIMARY KEY ( `COU_SALID` ) 
FOREIGN KEY (SAL_ID) REFERENCES CATEGORIE (SAL_ID) );
cependant ca me sort l'erreur suivante :

Citation:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FOREIGN KEY (SAL_ID) REFERENCES CATEGORIE (SAL_ID) )' at line 1
je ne sais plus quoi tester je ne comprends d'ou ca vient

pouvez vous m'eclaircir la dessus

je vous remercie d'avance
ronki est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2008, 21h02   #2
Membre chevronné
 
Avatar de pop_up
 
Inscription : avril 2006
Messages : 833
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : avril 2006
Messages : 833
Points : 690
Points : 690
est ce que tes tables sont en innodb ?

voici un exemple qui fonctionne :
Code :
1
2
3
4
5
6
7
8
9
 
CREATE TABLE parent(id INT NOT NULL,
                    PRIMARY KEY (id)
) TYPE=INNODB;
CREATE TABLE child(id INT, parent_id INT,
                   INDEX par_ind (parent_id),
                   FOREIGN KEY (parent_id) REFERENCES parent(id)
                     ON DELETE CASCADE
) TYPE=INNODB;
plus de details ici
pop_up est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/01/2008, 00h12   #3
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 3 823
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 36
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 3 823
Points : 6 408
Points : 6 408
Bonjour,

Je ne vois pas le champ SAL_ID dans la création de la table COU_COURS...
C'est normal ? Parce que du coup, ça ne risque pas de marcher, la création de la clef étrangère... Il faut d'abord définir le champ SAL_ID dans COU_COURS.

ced
ced est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h10.


 
 
 
 
Partenaires

Hébergement Web