我正在尝试使用phpmyadmin为我的mysql数据库设置外键。 但是phpmyadmin只在“关系视图”中显示内部关系。注意我已经确定了以下步骤。
设置phpmyadmin数据库(create_table.sql和config stuff)
使用InnoDb确保数据库中的所有表格
确保我的预期外键/参考键被编入索引。
完成所有这些步骤后,我只能在关系视图中看到内部关系。
我错过了什么吗?
答案 0 :(得分:4)
这实际上不是一个解决方案,但由于我还无法评论帖子,我会添加一些可能有用的评论。
我遇到了同样的问题,关键参数似乎如下:
我一直在Linux中成功使用混合大小写的表名,但在Windows中,phpMyAdmin似乎出了问题。
我打赌你的桌子名字是混合的。尝试使用完全小写的名称自己创建一个测试表,并检查是否看到phpMyAdmin的“外键关系”选项。
如果你这样做,那么我们就找到了问题的根源,我们只是找到解决方案或解决方法:)
ps:关于区分大小写和mysql的更多信息,没有关于所有这些的phpMyAdmins视图的任何提示,可以在这里找到:
http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html
这是解决方案。将表名'myTable'重命名为'my_table'可以解决问题。
答案 1 :(得分:0)
如果数据库的表上具有不同的存储引擎,则可能是这种情况。我知道唯一支持外键的存储引擎是InnoDB。 MyISAM和其余的似乎无效。