我在创建一些外键时遇到了一些问题......
当我尝试在MySQL Workbench中定义外键时,出现了以下消息:
必须为所选列“playerName”创建索引并具有兼容的类型,才能创建外键。
这时我的问题开始了:我很确定,该列(towns.playerName)已经被索引,并且它绝对是相同类型(VARCHAR(255))...
‘towns’的索引
我想从players.name(主键,非空,唯一)
到towns.playersName(非空)
添加一个外键。
那么我该怎么做才能创建外键呢?
似乎我做错了什么...
PS:如果已经有关于此问题的问题,请原谅我......
编辑:我刚刚再次尝试(与之前几次完全相同),现在它可以工作了......真奇怪
也许是MySQL Workbench的一个错误吗?
towns.playersName
也必须有一个索引。新版的 MySQL 会自动创建必要的索引,但在旧版本中,您必须自己为外键使用的字段创建索引。 - Marc Btowns.playerName
被索引了...也许不是很清楚;问题已经编辑过了。 - Sa'Kagé