CREATE TABLE `mydb`.`Height` (
`Height ID` VARCHAR(45) NOT NULL ,
`Value` DOUBLE NULL ,
`Unit` VARCHAR(10) not NULL ,
`Value in Cms` DOUBLE NULL ,
PRIMARY KEY (`Height ID`))
;
CREATE TABLE `mydb`.`HeightUnit` (
`Unit` VARCHAR(10) NOT NULL ,
`Size in Cms` DOUBLE NULL ,
PRIMARY KEY (`Unit`),
FOREIGN KEY (`Unit`)
REFERENCES `Height` (`Unit`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
;
我得到1005无法创建表errno 150 ...
答案 0 :(得分:0)
引用的列需要有一个索引。
CREATE TABLE `mydb`.`Height` (
`Height ID` VARCHAR(45) NOT NULL ,
`Value` DOUBLE NULL ,
`Unit` VARCHAR(10) not NULL ,
`Value in Cms` DOUBLE NULL ,
PRIMARY KEY (`Height ID`),
INDEX (`Unit`))
;
通常外键应该引用另一个表的主键。您确定要引用Height
列而不是Height ID
吗?