这是我的问题:
我正在一个名为David
的数据库中工作,我试图创建两个表:colores
和productos
,它们将通过一个外键来链接,其中父表将是{ {1}}和子表格为colores
,但当我点击“继续”时,会显示以下消息:
有人可以帮助我吗?错误:150“外键约束形成错误”
这是我写的代码:
productos
答案 0 :(得分:2)
技术上问题只是单词references
之后的缺失空间,但整个过程需要更多的空间。
create table `color`(
id_color int(3) not null AUTO_INCREMENT,
nombre varchar(30) not null,
PRIMARY KEY(id_color)
) ENGINE=INNODB;
create table`producto`(
id_producto int(3) NOT null AUTO_INCREMENT,
nombre varchar(30) not null,
id_color int(3) not null,
precio decimal(10) not null,
PRIMARY KEY(id_producto),
INDEX(id_color),
FOREIGN KEY(id_color)
REFERENCES `color`(id_color) on UPDATE CASCADE
) ENGINE= INNODB;
此外,PK列上不需要NOT NULL
。只是说。它变得自动且多余。