mysql - #1005 - 无法在表的一对多关系上创建表

标签 mysql xampp laravel-5.2

我有餐 table 产品和餐 table 品牌。我想做一对多的关系。品牌有很多产品。

这是带有列的表
enter image description here

而这个产品中的数据样本
enter image description here
而这个品牌数据样本
enter image description here
我尝试通过这个 mysql 语句添加外键

ALTER TABLE products ADD CONSTRAINT fk_brand_id FOREIGN KEY (brand_id) REFERENCES brands(brand_id)

我收到这个错误
 #1005 - Can't create table `larashop`.`#sql-dd4_77` (errno: 150 "Foreign key constraint is incorrectly formed") (Details…)

请任何人帮助我

最佳答案

尝试检查表匹配的存储引擎。例如,尝试在 InnoDB 和 MyISAM 之间设置 FK 将失败。

编辑答案。

您是品牌表中品牌 ID 的无符号数据类型,并为产品表中的外键品牌 ID 分配 int 数据类型。尝试将品牌表中无符号品牌 ID 数据类型更改为整数。

请检查此链接
MySQL Cannot Add Foreign Key Constraint

关于mysql - #1005 - 无法在表的一对多关系上创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37242913/

相关文章:

tomcat - XAMPP:启动tomcat时出错

php - WAMP/XAMPP 在 localhost 上的响应非常慢

mysql - 如何返回商店评论大于或等于输入的所有项目-Laravel 5.2

php - 从计数匹配结果中获取不同的请求形式两张表mysql php

mysql - SQL外连接时间序列与不同时间的数据

linux - 本地浏览器无法访问ip地址

php - 如何使用 Artisan 命令 (PHP) 在 Laravel 5.2 中创建 RESTful 资源 Controller

php - 关系表中的SQL搜索查询

mysql - Sequelize - 创建 1 对 N 关系时标识符名称 'xxx_idx' 太长

php - 如何在 Laravel 中使用 JSON 对象中的 POST 方法获取数据?