奇怪的MySQL外键错误

时间:2017-03-24 08:49:20

标签: mysql database mysql-workbench

由于未知原因,我无法再创建MySQL外键 症状:

  • 我的MySQL安装中的所有数据库和表都发生了这种情况,我之前没有任何更改。
  • 当试图勾选MySQL Workbench外表字段框以添加外键时,该框拒绝勾选。
  • 尝试以编程方式添加外键时收到错误General error: 1215 Cannot add foreign key constraint

外键的SHOW ENGINE INNODB STATUS;输出:

  
LATEST FOREIGN KEY ERROR
------------------------
     

2017-03-23 20:11:34 0x23c4表timu /#sql-17bc_1a的外键约束出错:     删除限制的外键(user_id)引用usersid):    在引用的表中找不到索引    引用的列显示为第一列或列类型    在表中,引用的表与约束不匹配。    请注意,ENUM和SET的内部存储类型已更改    使用> = InnoDB-4.1.12创建的表,以及旧表中的此类列    新表中的此类列不能引用它们。

我尝试过的事情:

  • 确保数据库,服务器以及表和列都遵循相同的字符集和排序规则
  • 确保一切都是InnoDB
  • 确保列的类型完全相同
  • 卸载除MySQL安装程序以外的所有MySQL组件,然后从头开始重新安装。

所有这一切尤其是这一事实发生在我本地MySQL上的所有表和数据库中,这让我相信它必须是MySQL实例的东西。

0 个答案:

没有答案