[英]Cannot add foreign key constraint in my DB
我不知道為什么在創建數據庫時出現此錯誤:
Executing SQL script in server
ERROR: Error 1215: Cannot add foreign key constraint
CREATE TABLE IF NOT EXISTS `CollegeDB`.`Eleve` (
`idPersonne` VARCHAR(15) NOT NULL,
`dateNaissance` DATE NULL,
`lieuNaissance` VARCHAR(45) NULL,
PRIMARY KEY (`idPersonne`),
INDEX `fk_Eleve_Personne1_idx` (`idPersonne` ASC),
CONSTRAINT `fk_Eleve_Personne1`
FOREIGN KEY (`idPersonne`)
REFERENCES `CollegeDB`.`Personne` (`idPersonne`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
SQL script execution finished: statements: 10 succeeded, 1 failed
Fetching back view definitions in final form.
Nothing to fetch
我有表Personne和從中繼承的其他兩個表:Eleve和Enseignant總計我的EER圖工作台模型中有10個表,您知道嗎? 非常感謝
表人員:
CREATE TABLE IF NOT EXISTS `CollegeDB`.`Personne` (
`idPersonne` VARCHAR(15) NOT NULL,
`nom` VARCHAR(45) NULL,
`prenom` VARCHAR(45) NULL,
`sexe` VARCHAR(45) NULL,
`statut` VARCHAR(45) NULL,
`rue` VARCHAR(45) NULL,
`image` VARCHAR(45) NULL,
`cp` INT NULL,
PRIMARY KEY (`idPersonne`),
INDEX `cp_idx` (`cp` ASC),
CONSTRAINT `cp`
FOREIGN KEY (`cp`)
REFERENCES `CollegeDB`.`Commune` (`cp`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = big5
PACK_KEYS = Default;
您需要在Personne.idPersonne上創建索引。
從http://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html中 :
MySQL需要在外鍵和引用鍵上建立索引,以便外鍵檢查可以快速進行,而無需進行表掃描。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.