mysql创建主键时错误:1005 - Can't create table 'xx' (errno: 150)

翻译 2018年04月16日 11:51:18

mysql创建主键时错误:1005 - Can’t create table ‘xx’ (errno: 150)

该错误大概有以下原因,需要逐一对照检查排除:

  • 当前表关联键与外键的类型和长度不符,两个键需要同类型、同长度,包括SIGNED和UNSIGNED类型都要一致
  • 其中一个键没有设置为索引或不是主键
  • 外键名称与已存在的键名重复
  • 其中一个或者两个表都是MyISAM类型,请将它们改换为InnoDB类型
  • 两个键的NULL和NOT NULL类型不一致
  • 两张表的字符集不同
  • 外键设置了默认值为0
  • 其中一个键是关联索引的一部分,请将其设置为独立索引
  • Alter语句有语法错误
  • 外键名称超过了64个字符

MySQL创建外键时报Can't create table (errno: 150)错误解决办法

总的来说,这个问题的原因就是创建的外键和关联的表的主键类型不匹配。下面用个简单的例子来说明。 两张很简单的表,学生表和教师表: CREATE TABLE `t_teacher` ( `id` ...
  • huqiao1220
  • huqiao1220
  • 2016-05-17 02:30:02
  • 3415

mysql [Err] 1005 - Can't create table '.\ \#sql-b34_61.frm' (errno: 150)

我创建外键时,得到了这个错误,我对表和字段检查了又检查,始终没有发现问题出现在哪里,google了很多下,也百度了很多下,最终从国外的一封信件中得到了提示:两个字段一个选择了无符号,而另一个没有选,会...
  • shijiedemuguang
  • shijiedemuguang
  • 2012-09-27 18:16:08
  • 8298

MySQL ERROR 1005: Can’t create table (errno: 150)解决办法

最近在做数据库大作业,采用mysql建立数据库的时候出现了这个情况,查了一下,解决了。 出现问题的大致可能情况 1、外键的引用类型不一样,如主键是int外键是char 2、找不到主表中引用的列 ...
  • fmwind
  • fmwind
  • 2014-08-02 12:13:10
  • 2943

MySQL创建外键出现 ERROR 1005: Can't create table (errno: 150)解决办法

创建外键出现上述150错误,多方排查。 有3个原因 1、类型不一样不匹配 2、找不到引用的列(非sql手动设计表添加约束外键应该不会出现此问题) 3、2张表的字符编码不一致或者存储引擎不一样,...
  • ypp91zr
  • ypp91zr
  • 2017-07-05 15:02:33
  • 145

mysql -error 1005 (errno:150)

来源:http://www.javaeye.com/topic/615260  错误:1005 SQLSTATE: HY000 (ER_CANT_CREATE_TABLE) 消息:无法创建...
  • snakewarhead
  • snakewarhead
  • 2011-06-16 18:30:00
  • 3164

ERROR 1005 (HY000): Can't create table '' (errno: 150)

在mysql 中建立引用约束的时候会出现MySQL ERROR 1005: Can't create table (errno: 150)的错误信息结果是不能建立 引用约束。 出现问题的大致情况...
  • wangyili002
  • wangyili002
  • 2016-10-14 10:44:14
  • 237

Mysql 的ERROR 1005 (HY000): Can't create table 'xxx' (errno: 150)

在使用MySQL的时候,在操作不当时,很容易出现 ERROR 1005 (HY000): Cant create table 这类错误。很多站长朋友可能需要排查很久才会找到问题的原因其实很简单,希望这...
  • onsrs
  • onsrs
  • 2008-10-02 09:45:00
  • 4336

MySQL ERROR 1005: Can't create table (errno: 150)

执行以下语句时 alter table t_price add constraint FK_PRICE_REF_APP foreign key (app_id)       references t...
  • kenera
  • kenera
  • 2011-08-10 16:53:17
  • 1458

mysql 常见错误:Can't create table... errno150原因分析

已知的原因:  1  两个字段的类型或者大小不严格匹配,例如,如果一个是INT(10), 那么外键也必须设置成INT(10), 而不是 INT(11) 也不能是 TINYINT. 你得使用 SHOW...
  • Y1366925106
  • Y1366925106
  • 2016-03-01 21:57:27
  • 1300

新增表时报(1005, "Can't create table 'btpmnew.#sql-7ac_188' (errno:121)")错

Creating table pm_snmpmonitorrecord Traceback (most recent call last): File "manage.py", line 11...
  • cai0611
  • cai0611
  • 2011-10-12 10:47:39
  • 1463
收藏助手
不良信息举报
您举报文章:mysql创建主键时错误:1005 - Can't create table 'xx' (errno: 150)
举报原因:
原因补充:

(最多只允许输入30个字)