Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 06/07/2010, à 12:03

james_sunderland

sql primary key et foreign key

salut tout le monde

j'utilise mysql

j'ai créer 2 tables

une table a 2 attribut dont 1 est une clé primaire

et dans la 2eme table il y a aussi 2 attribut :
le premiere attribut est une clé primaire et le 2eme et une clé etrangere referenciée sur la clé primaire de la 1ere table.


Donc se que je veux savoir est ce que quand j'ajoute une entité dans la 2eme table la cle étarangere doit exister dans la 1ere table ?
et si j'efface  une entité de la permiere table et elle a une entité qui la correspend dans la 2 eme table est ce que l'entité de la 2eme table va ete effacé ?

j'espere que vous m'avez compris

merci .

Hors ligne

#2 Le 06/07/2010, à 17:10

yohann

Re : sql primary key et foreign key

bonjour, pour commencer la gestion des clés étrangère n'est pas possible si tu utilise le moteur de stockage par défaut (MyIsam) mais possible si tu utilise le moteur innoDB.

ensuite il y a plusieurs comportement possible pour la création et la suppression d'enregistrements, cela dépend de la structure de tes tables.
tout cela est bien expliqué en français sur le site de mysql

http://dev.mysql.com/doc/refman/5.0/fr/innodb-foreign-key-constraints.html

je te laisse lire, et revenir vers moi si tu as des questions.


j.vachez, le génie du net | Soirées jeux sur Lyon | 441
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.

Hors ligne

#3 Le 06/07/2010, à 18:26

james_sunderland

Re : sql primary key et foreign key

merci yohann pour votre aide , mais j'ai une aute question pour les type myisma et innodb quand je crée une table depuis le terminal avec mysql elle est par defaut myisam  donc ma question est  si je peux choisir innodb depuis le terminal.
merci encore

Hors ligne

#4 Le 07/07/2010, à 01:26

funkalee

Re : sql primary key et foreign key

exemple :

CREATE TABLE `Lang`(
`idLang` bigint(20) unsigned AUTO_INCREMENT,
`codeLang` varchar(8),
CONSTRAINT `pk_Lang_idLang`
PRIMARY KEY(`idLang`),
unique key `idx_Lang_code`(`codeLang`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

ca doit pas etre une bonne idée de changer le moteur de base par défaut alors que a la création de table tu peux simplement rajouter la clause engine

Hors ligne