MySQL外键的作用:


保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。 使两张表形成关联,外键只能引用外表中的列的值!


是否需要使用外键:


外键的确是有很多好处,但现在也流行反外键的操作,比如我的 医药吧网 的数据库就没有使用


任何的外键,取而代替的只用了索引。外键的确可以保存数据库的数据完整性,但我们常常会发


现数据库死掉,不得不修复。原来一家公司,专门写代码来修复数据表。我也不吐槽为什么要这


么做,花费大量的时间做自动修复表,为什么不去研究一下为什么出现表错误的原因!由于数据


库使用的是MyISAM作为存储引擎,而不是InnoDB,所以数据库根本用不上事务处理。而逻辑又


不做一下操作,而在一些错误状况下就外键就会让表出现错误。


其实外键的使用要看状况,比如我的网站并不要求数据的完整性,要求没有那么高。所以我就拒绝


了外键-主要是我不会外键的使用。



原文:http://bbs.landingbj.com/t-0-243782-1.html