|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 8 ![]() |
Voila je suis heberge chez wanadoo ou ils ont la version phpmyadmin phpMyAdmin 2.6.1-pl3, mais je ne connais pas la version de mysql installée.
Je voulais savoir si les cles etrangeres y sont gérées. Par exemple si je fais ça: CREATE TABLE `a` ( `id` int(6) NOT NULL default '0', PRIMARY KEY (`id`) ) TYPE=InnoDB; CREATE TABLE `b` ( `id` int(6) NOT NULL default '0', PRIMARY KEY (`id`) ) TYPE=InnoDB; CREATE TABLE `c` ( `ida` int(6) NOT NULL default '0', `idb` int(6) NOT NULL default '0', constraint fk1 foreign key (ida) references a(id), constraint fk2 foreign key (idb) references b(id), PRIMARY KEY (`ida`,`idb`) ) TYPE=InnoDB; Normalement je ne peux pas inserer dans la table 'c' des valeurs qui n'existent pas dans la table 'a' et 'b' ? Or je peux et quand je veux exporter les tables plus de contraintes et elles sont de type MyIsam. Si vous pouviez m'éclairer, merci. |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 8 ![]() |
personne n'a de
|
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Inscription : décembre 2004 Messages : 82 ![]() |
je ne sais pas à partir de quelle version de Mysql , le type innodb est supporté.
et si tu fais la commande: il te met quoi comme engine? |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 8 ![]() |
j'essairai demain
je te tiendrai au courant |
|
|
00
|
|
|
#5 |
|
Membre expérimenté
![]() ![]() Inscription : mai 2005 Messages : 414 ![]() |
il faut un mysql 3.23 pour gerer l'intégrité référentielle en InnoDB
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 8 ![]() |
ok le show table ne me montre rien de spécial
mais je ne connais pas la version de mysql, je suis allé voir surle site de phpmyadmin et je ne vois pas vraiment |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 8 ![]() |
il semblerait bien que ce soit une version > a la 3.23
mais so mon petit script au dessus est bon je ne devrais pas pouvoir inserer des valeurs dans "c" qui ne sont ni dans "a" ni dans "b"?? quel peut bien être le problème? |
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : décembre 2004 Messages : 82 ![]() |
le show table dit si le engine est InnoDB ou MyISAM
Il y'a que InnoDB qui supporte les clés étrangères. MyISAM lui prend les clés étrangères mais ne les applique pas. Sur certaines versions de Mysql le InnoDB n'existe pas. Ton code est bon , je l'ai testé sur mon Mysql et il marche. |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : mai 2004 Messages : 8 ![]() |
merci aaronw
donc si dans la table "a" tu mets 1 et dans la "b" par exemple dans la table "c" tu peux pa mettre 23 et 45 par exemple moi ça me le fait quand même. Quand je cree ma table InnoDb et qu'ensuite je veux l'exporter il me dit que c'est une MyIsam donc cette version de Mysql sur le serveur wanadoo ne prend pas en compte le type InnoDb |
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : décembre 2004 Messages : 82 ![]() |
de rien
PS : n'oublie pas de mettre résolu |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com