我一直在搜索SO和Google这个问题,但我提出的几乎是我的错误消息告诉我的,这不是问题。
我正在使用PHPMyAdmin来创建表之间的关系。我有这个表“warehouse_product_history”,其中列为“from”,类型为int(11)NULL。我尝试创建表“仓库”的外键,并且这样做时PHPMyAdmin执行的查询是
ALTER TABLE `warehouse_product_history`
ADD FOREIGN KEY (`from`) REFERENCES `my_db`.`warehouses` (`id`)
ON DELETE CASCADE ON UPDATE CASCADE;
仓库的类型 - > id是int(11)NOT NULL,因此不应该是问题。我试图将`from-column的数据类型更改为int(11)NOT NULL,但结果相同。
我收到此错误消息
Error creating foreign key on from (check data types)
答案 0 :(得分:4)
从表架构中,您的列不相同。 warehouses.id
是UNSIGNED NOT NULL
,其中warehouse_product_history.from
已签名,DEFAULT NULL
。