【问题标题】:How to alter Foreign Keys in phpMyAdmin如何在 phpMyAdmin 中更改外键
【发布时间】:2012-05-01 05:37:32
【问题描述】:

我已经在我的 mysql 数据库中设置了一个外键:

ALTER TABLE `gameplayers` ADD CONSTRAINT `FK_GAMENUMBER` FOREIGN KEY (`GameNumber`) REFERENCES `games`(`GameNumber`) ON UPDATE CASCADE ON DELETE CASCADE;

但是,我不确定我是否需要 ON UPDATE 和 ON DELETE。

所以我进入我的 phpAdmin,单击结构选项卡的索引部分中的编辑铅笔图标,我得到了这个:

警告:(“PRIMARY”必须是主键的名称,并且只能是主键的名称!)

是否只需要手动进行更改?即铅笔图标将不起作用。

另外:外键对mysql搜索有同样的速度加成效果,类似于索引吗?

【问题讨论】:

    标签: mysql foreign-keys


    【解决方案1】:

    外键需要索引,因此有效地,外键约束创建和索引,它可以像普通索引一样用于解析查询。

    我不确定您使用的是哪个版本的 phpMyAdmin,我认为最新版本支持外键约束,但您似乎没有列出外键索引,并且主键不是您要查找的。但是,您可以使用普通 SQL 修改键:

    ALTER TABLE `gameplayers` DROP FOREIGN KEY FK_GAMENUMBER,
        ADD CONSTRAINT `FK_GAMENUMBER` FOREIGN KEY (`GameNumber`) REFERENCES `games`(`GameNumber`) ON UPDATE NO ACTION ON DELETE NO ACTION;
    

    【讨论】:

      猜你喜欢
      • 2016-04-01
      • 2016-10-03
      • 2011-06-11
      • 2015-06-22
      • 2016-04-05
      • 2014-01-09
      • 2018-05-19
      • 2015-08-22
      • 2010-10-02
      相关资源
      最近更新 更多