Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Outils
Outils Forum d'entraide sur les outils pour MySQL. Avant de poster -> Outils 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 22/08/2007, 11h59   #1
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
Par défaut rajout clef étrangère

Bonjour à tous ,

voila transférer 4 tables de access vers mysql et je remarquer que les relations entre les tables ont disparus du cout , je voulais savoir quelle était la syntaxe pour rajouter une clef étranger dans table ,

merci d'avance !!
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 12h12   #2
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
Bonjour à tous ,

voila transférer 4 tables de access vers mysql et je remarquer que les relations entre les tables ont disparus du cout , je voulais savoir quelle était la syntaxe pour rajouter une clef étranger dans table ,

merci d'avance !!
Cela dépend de ton SGBD :
MySQL et SQL Server:
Code SQL :
1
2
ALTER TABLE TableDestination
ADD FOREIGN KEY (LeNomDeTaCleEtrangere) REFERENCES TableReferencee(CleReferencee);

Oracle:
Code SQL :
1
2
ALTER TABLE TableDestination
ADD (CONSTRAINT fk) FOREIGN KEY (LeNomDeTaCleEtrangere) REFERENCES TableReferencee(CleReferencee);
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/08/2007, 12h26   #3
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
en réalité quand je mets ton code j'ai une erreur , mais y a un index qui est crée .




erreur :Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\phpmyadmin\libraries\header_meta_style.inc.php:27) in C:\wamp\phpmyadmin\libraries\common.lib.php on line 1154


c quoi le prb stp.
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 12h34   #4
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Je ne m'y connais pas en php.
Déjà est-ce que t'as les droits pour faire des alter table et companie ?
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 13h37   #5
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
c'est quoi cette histoire de droits sur les alter ??? tu peux me donner plus de details. car quand je rentre le code y a un message d'erreur qui s'acffiche ok, mais y a un index qui est créer , un index n'est pas une clef étranger. car quand j'essaye de faire une relation , sur le champ ou il y a l'index c'est ecrit " pas de clef "
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 14h16   #6
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
j'au mis ç comme code , il l'accepte bien :

ALTER TABLE distributeurs ADD CONSTRAINT dist_fk FOREIGN KEY (adresse) REFERENCES adresses (adresse) MATCH FULL;



mais le probleme est quand j'essaye de faire la gestion des relation des table la ou il y a l'index et normalement la clef etrangere il me fait " clef non definie " ??
c'est quoi le prbl svp
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 14h46   #7
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
c'est quoi cette histoire de droits sur les alter ???
Généralement, si c'est pas toi qui a créé la base de données. Son créateur doit te donner les privilèges pour accéder à la base, genre :
Code SQL :
1
2
3
GRANT ALL PRIVILEGES ON *
TO TonLogin
IDENTIFED BY 'TonPassword';
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h04   #8
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
j'au mis ç comme code , il l'accepte bien :

ALTER TABLE distributeurs ADD CONSTRAINT dist_fk FOREIGN KEY (adresse) REFERENCES adresses (adresse) MATCH FULL;



mais le probleme est quand j'essaye de faire la gestion des relation des table la ou il y a l'index et normalement la clef etrangere il me fait " clef non definie " ??
c'est quoi le prbl svp
T'as essayé de faire un select de tes champs pour voir si la clé à bien été créée.
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h09   #9
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
c'est-a-dire " select" ???
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h14   #10
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
je pense que la clef est créer mais juste un truc , quand tu gères les relation tu gères seulement les champs ou il y a une clef étrangère mais pas la ou il y a une clef primaire ??

j'ai essayé de gérer les clefs primaires ç m'affiche un message d'erreur !!!!normal
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h19   #11
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
c'est-a-dire " select" ???
Code SQL :
1
2
SELECT *
FROM TaTable;
Citation:
Envoyé par neoboy Voir le message
je pense que la clef est créer mais juste un truc , quand tu gères les relation tu gères seulement les champs ou il y a une clef étrangère mais pas la ou il y a une clef primaire ??

j'ai essayé de gérer les clefs primaires ç m'affiche un message d'erreur !!!!normal
Tu entends quoi par gérer ?
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h22   #12
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
tu vois l'anglet " gestion des relations " dans phpmyadmin , la on peut relier les tables c'es ça que je veux dire
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h32   #13
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
tu vois l'anglet " gestion des relations " dans phpmyadmin , la on peut relier les tables c'es ça que je veux dire
Non je ne vois pas étant donné que j'ai déjà dit :
Citation:
Envoyé par AL1986 Voir le message
Je ne m'y connais pas en php.
Tu veux faire quoi exactement (avec les clés primaires)?
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h32   #14
Membre confirmé
 
Avatar de Sieldev
 
Étudiant
Inscription : décembre 2006
Messages : 259
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2006
Messages : 259
Points : 285
Points : 285
En fait AL1986, neoboy veut parler de ça:



Pour la gestion des relations tu l'as fait juste sur les clés etrangéres.
Le delete on casacade et le update on cascade permettront juste de supprimer tous les entrées affiliés à la clé etrangére.
Dans ce cas la, si je supprime une société, alors je supprimerai tous ses contacts, ca evite d'avoir des contacts sans société et surtout à vider la table des entrées inutiles.

Mais à partir du moment que tu as creé ta clé etrangére sur la table tu as fais le lien.


Par contre gerer une base de donnée sans savoir ce qu'est un SELECT, c'est à eviter.
Tu as les bases à savoir sur les bases de données et sur le langage SQL ici:
- http://sgbd.developpez.com/cours/
Sieldev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h44   #15
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
merci je voulais juste savoir s'il faut juste traiter que les clefs étrangères ?? mais il reste un truc qui m'inquiète c'est quand je créer une clef étrangère ç affiche comme si j'ai créer un index , normal ou pas ??? comment vérifier qu'elle sont bien crées . merci
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h50   #16
Membre confirmé
 
Avatar de Sieldev
 
Étudiant
Inscription : décembre 2006
Messages : 259
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2006
Messages : 259
Points : 285
Points : 285
Oui que les clés etrangéres.
Oui c'est normal que se soit en type INDEX, ca veut dire que c'est une clé etrangére.
Sieldev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h55   #17
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
mais il reste un truc qui m'inquiète c'est quand je créer une clef étrangère ç affiche comme si j'ai créer un index , normal ou pas ???
Que veut dire comme si. Un index ne se crée pas tout seul. Soit plus explicite.
Citation:
Envoyé par neoboy Voir le message
comment vérifier qu'elle sont bien crées .
Déjà dit :
Citation:
Envoyé par AL1986 Voir le message
Code SQL :
1
2
SELECT *
FROM TaTable;
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h55   #18
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
merci , je te remercie beaucoup pour ton aide , c'est très sympa !!! c'est bon c'est résolu maintenant.
neoboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 15h59   #19
Membre éprouvé
 
Avatar de AL1986
 
Inscription : juillet 2007
Messages : 434
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : juillet 2007
Messages : 434
Points : 401
Points : 401
Citation:
Envoyé par neoboy Voir le message
merci , je te remercie beaucoup pour ton aide , c'est très sympa !!! c'est bon c'est résolu maintenant.
Un bouton est prévu à cet effet
__________________
Citation:
Etre ou ne pas être, telle est la question sinusoïdale de l'anachorète hypocondriaque et vice et versa .
Bonsai monsieur, bonsai madame, vous avez gagnez un milliard de degrés au soleil .
There is no cure for stupidity (ou pas ).
AL1986 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/08/2007, 16h04   #20
Membre du Club
 
Avatar de neoboy
 
Inscription : juillet 2007
Messages : 170
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 170
Points : 44
Points : 44
c'est fait tkt
neoboy 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 14h21.


 
 
 
 
Partenaires

Hébergement Web