MySQL创建外键约束的报错Error : Can't create table '#sql-534_185' (errno: 150)

来源:互联网 发布:广州数据分析师培训 编辑:程序博客网 时间:2024/05/16 01:40

总得来说是因为两个表的字段类型不一致,例如:

  1. 两个字段的类型或大小不严格匹配,一个为tinyint,另一个为char;或一个为int(10)另一个为int(9)也是不行的,即使都为int(10),但一个是有符号数,一个是无符号数也会报错。
  2. reference的另一个表的字段必须是主键或建立索引。
  3. 外键的名字有重复或与键值重复。
  4. 两个表必须都是用InnoDB引擎,事实上MyISAM引擎是不会产生外键的。
  5. 设置了ON DELETE SET NULL,但字段又设置为NOT NULL。
  6. 在这个关系里面,其中的一个字段是一个混合键值中的一个,它没有自己独立的索引,这时,你必须为它创建一个独立的索引。
  7. 主键和外键的字符编码不一致。例如一个是utf-8另一个是GBK。

总的来说,就是两个字段有不一样的地方,不能建立外键约束。

阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 黑号抽不中天猫购物券怎么办 退款后购物津贴怎么办 天猫优惠券过期怎么办 淘宝店复核不过怎么办 房产新人没客源怎么办 淘宝商品被监管怎么办 天猫店铺监管怎么办 普票超额了怎么办 开票金额超过限额怎么办 淘宝拉入黑名单怎么办 淘宝卖食品证件怎么办 京东额度不够怎么办 天猫盒子内存不足怎么办 10086办无限流量怎么办 天猫营业额不够怎么办 试电笔电阻坏了怎么办 父子间车辆过户怎么办 房子卖了天然气怎么办 社保这个月没扣怎么办 员工不交社保怎么办 公司没交社保怎么办 微信转账受限怎么办 支付宝违规限制怎么办 微信转账不还钱怎么办 碳放久了不爱起火怎么办 闻碳火时间久了怎么办 被代运营诈骗怎么办 被上海聚连骗了怎么办? 蓝领贷逾期半年怎么办 淘宝店倒闭售后怎么办 淘宝店铺宝贝被下架怎么办 医院被托管编制怎么办 领码分百万账号异常怎么办 拼多多帐号异常怎么办 qq钱包交易异常怎么办 托管公司跑了怎么办? 花呗退款没到账怎么办 车辆过户了车牌怎么办 货车资格证脱审怎么办 廉租房夫妻离婚怎么办 二手车行驶证怎么办的?