栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

休眠:复合PK与代理PK中的观点

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

休眠:复合PK与代理PK中的观点

有关任何应用程序的第一条规则是需求会发生变化。期。因此,看起来像是今天PK的理想人选的东西可能根本不是明天的PK。

如果值包含以下特征,则它是PK的良好候选者:

  1. 这是一成不变的。它永远不会改变。
  2. 独特性 两个记录将永远不会共享相同的ID。

就是说,在现实世界中永久地拥有具有这些特征的任何东西几乎是不可能的。我的意思是,即使某些事物今天是不变的且独特的,也并不意味着它会一直如此。

因此,请尽可能使用代理键。仅对遗留数据库使用自然键。并逃避那些建议自然键比替代(替代)更好的朋友:-)

当然,当然:您可以在数据库中使用约束来强制执行唯一性规则(就像您在示例中所做的那样),如果这是业务规则,则不可能使两个记录共享相同的值。当将来业务逻辑发生变化时,您会很高兴地看到您使用了代理密钥;-)

但是,不要为此而对stackoverflow上的随机家伙信任。阅读维基百科的这两篇文章:

http://en.wikipedia.org/wiki/Surrogate_key

http://en.wikipedia.org/wiki/Natural_key



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/467105.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号