这个问题在这里已经有答案了:
mysql创建带有外键的表,给出errno:150(20个答案)
两年前关门了。
假设我们有一个products表和一个orders表。products表有一个主键(tinyint),orders表有一个主键(int)。
尝试添加外键:
alter table `products_orders`
add constraint `products_orders_products_id_foreign` foreign key (`products_id`)
references `products` (`id`) on delete cascade;
SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint
1条答案
按热度按时间imzjd6km1#
外键引用列数据类型必须完全相同(包括
not null
以及unsigned
旗帜等)。这避免了在进行比较时出现任何歧义。我建议所有外键列都应该是
Int
以及unsigned
.