回答

收藏

主键和代理键有什么区别?

技术问答 技术问答 175 人阅读 | 0 人回复 | 2023-09-14

我在Google搜索了很多,但是没有找到有示例的确切直接答案。
. w; e5 r0 F, M任何一个例子助的例子。, g. s5 m5 y( E0 l
                                                               
. N( l& ^' P6 L) O    解决方案:                                                               
/ @, v1 u7 p1 {, E                                                                主键是您在表中选择的唯一键,可以是唯一识别表中最好的记录。所有的表都应该有一个主键,因为如果你需要更新或删除一个记录,你需要知道如何识别它。% K5 {9 ?+ `2 t9 _8 P( d+ m
代理密钥是人工密钥。当你的记录本质上没有自然键时(例如Person当表格)时,它们非常有用。因为两个出生在同一日期的人可能有相同的名字,或者记录在日志中,因为两个事件可能会发生,例如,他们有相同的时间戳)。通常,你会看到它们在自动增加的字段中实现为整数或自动生成每个记录GUID。身份证号码几乎总是代理钥匙。
4 W: X/ R! `  g  G% a: A然而,与主键不同,并不是所有的表都需要代理键。如果你有一张列出美国各州的表格,你实际上不需要它ID号码。您可以将状态缩写作为关键代码。' D" y6 d' I3 `. e
代理密钥的主要优点是很容易确保它们是唯一的。主要缺点是它们毫无意义。例如, 28并不意味着威斯康星州,但当你在地址表的状态列中看到
' M0 y6 m& h6 M3 {" `) M4 K' V1 }WI当你知道你想说什么状态时,你不需要找到你所在的州。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则