MySQL Error number: MY-012195; Symbol: ER_IB_MSG_370; SQLSTATE: HY000

文档解释

Error number: MY-012195; Symbol: ER_IB_MSG_370; SQLSTATE: HY000

Message: %s

错误说明

MY-012195 (ER_IB_MSG_370) 是一个MySQL错误,隶属于MySQL InnoDB存储引擎中的错误代码池,当使用MySQL的InnoDB存储引擎时,如果用户遇到发生这个错误代码时,则在控制台显示以下错误信息:

“InnoDB: A table in InnoDB format needs to have the primary key in the clustered index. Prefix key length is 0; Please create a separate clustered index on the primary key and drop the primary key of this table”

常见案例

这个错误通常会发生在用户尝试在 InnoDB 中更新或删除一个表时,此时MySQL就会弹出一个错误信息,表明用户的表不符合InnoDB的数据结构要求:主键必须使用聚集索引。如果没有找到主键,则必须先创建一个单独的聚集索引,然后将该主键添加到表的索引中,并且删除该表的主键。

解决方法

解决这种情况的一种方法是先从MySQL中删除该表,然后重新创建一个新的表,并将分析,在这个新表中用Create Index语句创建一个聚集索引。这样,就可以完成解决该错误的过程。

另一种解决方法是使用ALTER TABLE语句,语句如下所示:

ALTER TABLE

ADD PRIMARY KEY();

这样,就可以重新添加被删除的主键,并将它指定为一个聚集索引。这样,重新添加被删除的主键就可以解决ER_IB_MSG_370这类错误了。

你可能感兴趣的