Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql无法添加外键约束错误_Mysql_Sql - Fatal编程技术网

Mysql无法添加外键约束错误

Mysql无法添加外键约束错误,mysql,sql,Mysql,Sql,我知道这个错误已经有好几个答案了 我的错误:1215无法添加外键约束错误 但其中任何一种都有效: -外键的类型与原始键的类型相同 -它们有相同的编码 -都是innoDB的 当我显示引擎INNODB状态时;: InnoDB=========================================================================2017-03-23…. 这是我的密码: CREATE TABLE IF NOT EXISTS `TBL_USERS_EK` (

我知道这个错误已经有好几个答案了

我的错误:1215无法添加外键约束错误

但其中任何一种都有效:

-外键的类型与原始键的类型相同

-它们有相同的编码

-都是innoDB的

当我显示引擎INNODB状态时;:

InnoDB=========================================================================2017-03-23….

这是我的密码:

CREATE TABLE IF NOT EXISTS `TBL_USERS_EK` (
  `user_ID_EK` INT(11) NOT NULL AUTO_INCREMENT,
  `user_Name_EK` VARCHAR(100) NOT NULL,
  `user_Email_EK` VARCHAR(100) NOT NULL,
  `user_Pass_EK` VARCHAR(100) NOT NULL,
  `user_Status_EK` enum('Y','N') NOT NULL DEFAULT 'N',
  `tokenCode_EK` VARCHAR(100) NOT NULL,
  `user_rank_EK` VARCHAR(100) NOT NULL DEFAULT 'Apprenti detective',
  `nb_validation_enigma` int(11) NOT NULL DEFAULT 0,
  PRIMARY KEY (`user_ID_EK`),
  UNIQUE KEY `user_Email_EK` (`user_Email_EK`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

CREATE TABLE IF NOT EXISTS `TBL_ENIGMA_EK` (
  `enigma_ID_EK` INT(11) NOT NULL AUTO_INCREMENT,
  `nbr_enigma_part_EK` INT(11) NOT NULL,
  `user_ID_EK` INT(11) NOT NULL,
  `validation_status` enum('Y','N') NOT NULL DEFAULT 'N',
  PRIMARY KEY (`enigma_ID_EK`),
  CONSTRAINT `TBL_ENIGMA_FK` FOREIGN KEY (`user_ID_EK`) 
  REFERENCES `TBL_USERS_EK`(`user_ID_EK`) 
  ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

CREATE TABLE IF NOT EXISTS `TBL_PART_EK` (
  `part_ID_EK` INT(11) NOT NULL AUTO_INCREMENT,
  `nbr_enigma_subpart_EK` INT(11) NOT NULL,
  `enigma_ID_EK` INT(11) NOT NULL,
  `user_ID_EK` INT(11) NOT NULL,
  `validation_status` enum('Y','N') NOT NULL DEFAULT 'N',
  PRIMARY KEY (`part_ID_EK`),
  CONSTRAINT `TBL_PART_FK1` FOREIGN KEY (`enigma_ID_EK`)
  REFERENCES `TBL_ENIGMA_EK`(`enigma_ID_EK`)
  ON DELETE CASCADE,
  CONSTRAINT `TBL_PART_FK2` FOREIGN KEY (`user_ID_EK`)
  REFERENCES `TBL_USER_EK`(`user_ID_EK`)
  ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

外键
语法的
名称中有输入错误。它应该是
REFERENCES(TBL\u USERS\u EK
),而不是
REFERENCES(TBL\u USERS\u EK
,下面应该可以:

CREATE TABLE IF NOT EXISTS `TBL_PART_EK` (
  `part_ID_EK` INT(11) NOT NULL AUTO_INCREMENT,
  `nbr_enigma_subpart_EK` INT(11) NOT NULL,
  `enigma_ID_EK` INT(11) NOT NULL,
  `user_ID_EK` INT(11) NOT NULL,
  `validation_status` enum('Y','N') NOT NULL DEFAULT 'N',
  PRIMARY KEY (`part_ID_EK`),
  CONSTRAINT `TBL_PART_FK1` FOREIGN KEY (`enigma_ID_EK`)
  REFERENCES `TBL_ENIGMA_EK`(`enigma_ID_EK`)
  ON DELETE CASCADE,
  CONSTRAINT `TBL_PART_FK2` FOREIGN KEY (`user_ID_EK`)
  REFERENCES `TBL_USERS_EK`(`user_ID_EK`)
  ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

TBL_PART_EK至TBL_USERS_EK中的外键存在语法错误。 您已将其命名为TBL_USER_EK,而应为TBL_USERS_EK

删除打字错误或用这个回复,它会工作的

在TBL_部分中

约束
TBL\u PART\u FK2
外键(
user\u ID\u EK
) 参考资料
TBL\u USER\u EK
USER\u ID\u EK

在删除级联时

您得到的错误是什么?