Page 1 sur 1
Besoin d'aide pour une commande
Posté : 24 mars 2010, 04:48
par Invité
Bonjour j'aimerais avoir un peu d'aide sur une commande qui ne fonctionne pas :
CREATE TABLE `pmd_machinery` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`domain_id` int(11) DEFAULT NULL,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `domain_ID` (`domain_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=95 ;
ALTER TABLE `pmd_machinery`
ADD CONSTRAINT `Reference2` FOREIGN KEY (`domain_ID`) REFERENCES `pmd_domains` (`domain_ID`) ON DELETE NO ACTION ON UPDATE NO ACTION;
Sa me donne une erreur pendant l'importation de la base de donnée.
ERROR 1005 <HY000>
J'ai tentez d'ajouter
SET FOREIGN_KEY_CHECKS = 0; au debut du fichier
SET FOREIGN_KEY_CHECKS = 1; a la fin du fichier
mais toujours cette érreur
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 16:17
par ouckileou
Tu as cherché à quoi correspondait le code 1005 pour MySQL (c'est bien aussi de préciser quel SGBD tu utilises)
Et comme c'est un problème de contrainte, il nous faudrait aussi la structure de la table "pmd_domains"
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 16:30
par ben0it24
Salut, voila.
J'utilise Mysql 5.1.33
CREATE TABLE `pmd_domains` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(50) DEFAULT NULL,
`ordering` smallint(6) NOT NULL,
KEY `ID` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 16:56
par ouckileou
Et l'autre question, tu as cherché ce que voulait dire ce code 1005 ?
Dans ta contrainte tu références une colonne qui n'existe pas dans l'autre table...
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 17:51
par ben0it24
oui c'est la raison pour laquelle j'ai tenter
SET FOREIGN_KEY_CHECKS = 0; au debut du fichier
SET FOREIGN_KEY_CHECKS = 1; a la fin du fichier
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 18:07
par ouckileou
Erf, alors tu sais dès le début d'où vient le problème, mais tu prends bien soin de mettre le minimum d'information pour nous laisser chercher...
Quel est l'intérêt de vouloir mettre une clé étrangère qui référence une colonne qui n'existe pas ?!
Par hasard (j'y crois pas trop), tu sais à quoi ça sert "FOREIGN_KEY_CHECKS" ? Regarde un coup dans le manuel, tu verras ce que ça fait...
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 18:32
par ben0it24
Pour tout dire je ne suis pas celui qui a fait ce script, il a été coder par une développeuse que j'ai payer, le script fonctionne actuellement sur mon site web. Mais quand j'essaie de "runner" le site "offline" via xampplite. Je tombe sur l'erreur en question sur ma console mysql. Alors j'ai fait une petite recherche sur la dite erreur et je suis tomber sur un site qui donnait cette solution pour réglé le problème, ayant vu des commentaire positif j'ai donc tenter, mais sans succès.
Re: Besoin d'aide pour une commande
Posté : 24 mars 2010, 19:12
par ouckileou
Ouais ok
Bon ben résumé :
on peut pas créer une clé étrangère vers une colonne qui existe pas, donc soit tu crées la colonne soit tu supprimes la clé étrangère.
Ensuite ben va chercher un peu dans le manuel tout ces trucs là, t'apprendras plein de trucs pis comme ça tu pourras peut-être gérer ton site. Passe donc un coup de fil à cette développeuse aussi.
Par contre comme t'as l'air de lire mes messages en diagonale et de pas trop chercher derrière (genre si t'étais aller voir ce que faisais vraiment FOREIGN_KEY_CHECKS tu verrais que ça joue sur l'insertion de valeurs et non sur la création de la structure mias bon), moi je vais arrêter là pour l'instant.
Bon courage