大家好!
在Innodb中外键是强制的,也就是说非得插入已有的引用外键项,插入没有的外键就会报错!
这在运用中遇到很多麻烦,如果我在插入值得时候,遇到一个没有的外键值,需要先去增加外键对应的值。
我觉得用起来很有风险!
大家用Innodb外键一般是怎么用的呢?遇到没有的外键怎么处理?
顺便问一句,大家用外键有什么好处呢?

解决方案 »

  1.   

    外键的定义本身就是这样啊。 如果你的业务模式不是这样的参照完整性约束,则不必要设。
    和你的数据库的ER模式相关。按实际业务的需求处理。
      

  2.   


    正如1楼所说,要不要外键要看你的业务需要。举个例子:  如果身份证号是个人信息里的属性,而且这个身份证号是必填的,那么你就必须到公安局获取一个身份证号  但如果个人信息里,身份证可为空,那么其实这个外键是可以不要的。
      

  3.   

    外键的开销很大
    如果程序在应用层控制的好,
    完全可以不用