日期:2014-05-17  浏览次数:20316 次

SQL SERVER做项目时,使用外键好吗?
使用外键在修改表中字段的过程中会很麻烦,但使用外键也有很多好处。
我知道使用存储过程和触发器进行关联更改可以避免外键的使用。
在做项目中使用外键究竟好不好,神马时候必须用外键?

------解决方案--------------------
这要看你是否强调数据的完整性


------解决方案--------------------
没有必须用的时候,我知道用友的erp很少用,我们公司的crm等系统也基本不用,毕竟是一个团队一起搞一个项目,太多外键用起来会被烦死的
------解决方案--------------------
我们公司开发的项目中用的也不多,我想只要程序里考虑好数据完整性就行。
roy_88的建议也不错。
------解决方案--------------------
我一般都是使用外键的!
------解决方案--------------------
外键使用的还是挺频繁的。 

LZ说的修改? 是外键表中属性跟着主键表更改? 这种情况的话,一般考虑这个属性到底是谁的属性。比如供应商,和供应物品。 

供应商无效的时候,肯定供应物品也无效,供应物品无效的时候,供应商还可以是有效的。

类似这样:
case when 供应商有效性 =1 and 物品有效性 = 1 then 1 else 0 end

参考。