SQL Server MYSQL 对外键建立索引的必要性

背景:

      大家知道在定义外键时,都会给出on delete .....   on update .....;

      这里指定的就是当主表的列发生变化时,从表的列要用怎么样的变化去迎合。对从表中的外键,建立索引的价值就在这里,

      当主表的主键发生变化时,这就要把变化传播到从表,首先要找到从表中的行才行啊。想一想如果没有索引,就要对从表

      进行scan,如果有索引就可以对表进行index seek;这就可以大大的提高速度。  

      然、

      如果我们是向从表插入数据,外键约束会增检查主表,也就是说会对主表加锁。有锁的地方就有可能死锁。

原文地址:https://www.cnblogs.com/JiangLe/p/4031650.html