|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Invité régulier
![]() Développeur Web Inscription : janvier 2009 Messages : 20 ![]() |
Bonjour à tous,
Cela fait deux jours que je suis sur le même problème de création de clé étrangère et là je n'en peux plus. Je m'explique : Sur la base de données "bdd": J'ai une table de type INNODB charset UTF-8, appelée admettons "titi" ----------------- Identifiant varchar(100) PK NOT NULL Colonne1 varchar(45) Colonne2 int ... Je crée maintenant ma table bdd.toto : Code :
Citation:
Je ne sais plus quoi faire. Merci d'avance de vos réponses |
|||
|
|
00
|
|
|
#2 |
![]() ![]() |
Bien entendu, tu as essayé ça en ayant au préalable créé la table titi avec l'identifiant de cette table en clé primaire ?
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#3 |
|
Invité régulier
![]() Développeur Web Inscription : janvier 2009 Messages : 20 ![]() |
|
|
|
00
|
|
|
#4 |
![]() ![]() |
En dehors du fait qu'un VARCHAR(100) comme clé primaire est un mauvais choix, tu peux donner le script de création de la table titi (résultat de SHOW CREATE TABLE titi) ?
Il faudrait aussi que la colonne portant la clé étrangère soit indexée.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#5 | |||||
|
Invité régulier
![]() Développeur Web Inscription : janvier 2009 Messages : 20 ![]() |
Citation:
Le choix d'utiliser un VARCHAR(100) est indépendant de ma volonté, il doit probablement être capable de recevoir des chiffres ainsi que des lettres. Voici ensuite le script de création de la table titi : Code :
Cela veux dire que la commande Code :
ALTER TABLE `bdd`.`titi` COLLATE = XXX, ENGINE = YYY; J'effectue donc : Code :
ALTER TABLE `bdd`.`titi` CHANGE COLUMN `Identifiant` `Identifiant` VARCHAR(100) CHARACTER SET 'utf8' NOT NULL ; Code :
Merci de ton aide ! |
|||||
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Cédric DuprezInscription : avril 2002 Messages : 3 823 ![]() |
Et donc ? Le problème est
?
__________________
Rédacteur / Modérateur SGBD Mes tutoriels et la FAQ MySQL ---------------------------------------------------- Pensez aux balises code et au tag Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
|
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Développeur Web Inscription : janvier 2009 Messages : 20 ![]() |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com