【记录原因】复习创建外键知识,删除外键时提示外键不存在,但是show create table_name时发现有一个东西(key)存在(我以为是外键,其实应该是索引)。删除外键时提示‘表中外键不存在’。而后在看navicat才发现,创建外键过程中还多创建了一个东西:索引。我当时在操作时,删除完外键后,索引还存在,再执行创建一个外键时,会报错。但是现在再试就不会了,不知道为什么。
创建外键自然要有两张表
表1 t
表2 dept
好,操作开始
首先,先创建一个外键
结果如下:
可以看到,有两个东西,一个是索引,一个是外键。
(注意:无法先删除索引)
删除外键
结果:
可以看到少了一行语句
删除索引
结果:
让我感到很奇怪的是,当我第一次删除外键后,再创建一次外键时会报错,但是当我重启了几次MySQL后就可以了。匪夷所思。还有前天mysql80突然进不去了,不想备份卸载重装,一通乱搞,又可以了。