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

标签 mysql xampp laravel-5

我有表格产品和表格品牌。我想要建立一对多关系。品牌有很多产品。

这是带有列的表格 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 将失败。

编辑答案。

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

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

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

相关文章:

mysql - Pymysql 在查询期间丢失与 MySQL 服务器的连接

php - MySQL不输出PHP查询结果

PHP 脚本在 foreach 循环期间退出而没有错误,通过 echo long strings 解决

php - 我怎样才能确保中间件先于另一个运行

php - 如何向 Eloquent 数组添加计数?

php - 如何从表中选择除外部表中的值之外的所有值?

MySQL LEFT JOIN 不适用于多个表

php - 将日期保存到mysql数据库的最佳方法

java - 插入mysql表时出现异常

php - 来自 PHP 的 Redis 连接缓慢