听说大的项目都不用外键的,性能问题,数据的完整性不在数据库上做而是通过程序来做,是这样吗?

解决方案 »

  1.   

    我喜欢外键,保证数据的完整性.后期运行也减少BUG的出现.
      

  2.   

    如果数据量大,数据库表很多,那么这样的项目一般不会建立外键。
    也就是说一般的那种ERP项目都不会建立外键或者建立比较少的外键,除非此项目数据量少或者数据要求非常规范,不然,没有必要建立外键。
    其实,在业务里面体现外键,这样才是更有效率的做法,我觉得
      

  3.   

    建表时我就从来没建过外键约束。假如某个表中引用 USER 的 ID,那这个字段就叫 USER_ID,但是不会去建立与 USER 表的外键约束。数据完整性全部由程序控制。系统庞大,数据表众多的话更不应该建外键约束了,这样只会使这些表的结构变得更加不可维护
      

  4.   


    外键的处理主要在数据层考虑如下因素:
      1. 一对多级联查询(这个简单啦,不就是select命令吗)
      2. 级联更新(如果使用自增长的ID就可不考虑)
      3. 级联删除(先进行级联查询,再逐个删除)
      4. 级联置空(根据需求情况而定)
      5. 其他复杂的定制操作(如连表操作等)
      

  5.   

    http://blog.csdn.net/miraclestar/archive/2010/08/17/5819185.aspx我转载的文章,你看看把~~外键效率问题