MySQL创建外键出现 ERROR 1005: Can't create table (errno: 150)解决办法
2017-07-05 15:02
776 查看
创建外键出现上述150错误,多方排查。
有3个原因
1、类型不一样不匹配
2、找不到引用的列(非sql手动设计表添加约束外键应该不会出现此问题)
3、2张表的字符编码不一致或者存储引擎不一样,比如一张是MyISAM,一张是InnoDB
我出现的是第三种情况,存储引擎不一样,都改成InnoDB就可以了,不要都改成MyISAM,因为MyISAM不支持外键,不支持事务
有3个原因
1、类型不一样不匹配
2、找不到引用的列(非sql手动设计表添加约束外键应该不会出现此问题)
3、2张表的字符编码不一致或者存储引擎不一样,比如一张是MyISAM,一张是InnoDB
我出现的是第三种情况,存储引擎不一样,都改成InnoDB就可以了,不要都改成MyISAM,因为MyISAM不支持外键,不支持事务
相关文章推荐
- 关于MySQL创建表时Error 1005: Can't create table (errno: 121)的解决办法
- MySQL创建外键时错误:MySQL Error Number 1005 Can’t create table ‘XX.frm’ (errno: 150)
- 使用Navicat V8.0创建数据库,外键出现错误ERROR 1005: Can't create table (errno: 121)
- MySQL出现1005 - Can't create table 'zxct.#sql-1acc_a' (errno: 150)解决
- 使用Navicat V8.0创建数据库,外键出现错误ERROR 1005: Can't create table (errno: 121)
- MySQL创建外键约束的报错Error : Can't create table '#sql-534_185' (errno: 150)
- MySQL出现1005 - Can't create table 'zxct.#sql-1acc_a' (errno: 150)解决
- mysql创建外键约束报错【Bug Fix】Error : Can't create table '#sql-534_185' (errno: 150)
- MySQL错误之ERROR 1005 (HY000): Can't create table '******' (errno: 150)
- MySQL Error Number 1005 Can’t create table ‘.\mydb\#sql-328_45.frm’ (errno: 150)
- mysql中执行F8出现错误代码: 1005 Can't create table 'xxx' (errno: 150)
- MySQL Error Number 1005 Can’t create table ‘XX.frm’ (errno: 150)
- mysql 外键约束不能重名ERROR 1005 (HY000): Can't create table 'prize.tb_power' (errno: 121)
- MySQL ERROR 1005: Can’t create table (errno: 150)解决办法
- MySQL ERROR 1005: Can't create table (errno: 150)解决办法
- MySQL ERROR 1005: Can't create table (errno: 150)解决办法
- mysql:ERROR 1005 (HY000): Can't create table 'company.#sql-45d5_9' (errno: 150)
- Mysql 的ERROR 1005 (HY000): Can't create table 'xxx' (errno: 150)
- MySQL ERROR 1005: Can't create table (errno: 150)解决办法
- MySQL ERROR 1005: Can't create table (errno: 150)解决办法