Mysql:没有键名,但可以';t创建表(错误号:121)

Mysql:没有键名,但可以';t创建表(错误号:121),mysql,Mysql,是的,我已经读了所有关于TPOIC的书,但我仍然得到 Can't create table 'catalog_category_flat_store_1' (errno: 121) 我的查询不包含任何约束或键名称 DROP TABLE IF EXISTS `catalog_category_flat_store_1`; CREATE TABLE `catalog_category_flat_store_1` ( `entity_id` int(10) NOT NULL, PRIMARY

是的,我已经读了所有关于TPOIC的书,但我仍然得到

Can't create table 'catalog_category_flat_store_1' (errno: 121)
我的查询不包含任何约束或键名称

DROP TABLE IF EXISTS `catalog_category_flat_store_1`;
CREATE TABLE `catalog_category_flat_store_1` (
  `entity_id` int(10) NOT NULL,
  PRIMARY KEY (`entity_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
重命名表确实有帮助,但此处不是选项(不喜欢重写Magento)

对于
SHOW ENGINE INNODB STATUS
,我没有处理权限


此查询有什么问题?

该查询有效,因此可能与其他表的约束名称冲突。尝试通过
约束
PK\u id
主键(
entity\u id
)指定PK名称


它适合我,试着用管理员权限运行mysql,并检查用户数据库是否具有所有权限,如drop、create等

看起来我的innoDB坏了。我找到了我的问题和解决办法。未完成测试,但看起来很有希望:


删除并创建works,但我没有管理员权限。请尝试更改主键的名称谢谢,但这没有帮助。
DROP TABLE IF EXISTS `catalog_category_flat_store_1`;
CREATE TABLE `catalog_category_flat_store_1` (
  `entity_id` int(10) NOT NULL,
  CONSTRAINT `pk_id` PRIMARY KEY (`entity_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;