Surrogate键,Synthetic Key和Artificial Key之间有区别吗?

Har*_*had 28 sql oracle database-design data-modeling

代理键,合成键和人工键之间是否有任何差异?

我不清楚确切的区别.

APC*_*APC 37

代理键,合成键和人工键是同义词.技术关键是另一个.它们都意味着"没有商业意义的主键".它们与自然或商业密钥不同,后者具有超出系统范围的含义.

例如,考虑SO用户帐户.我们用两把钥匙来识别.自然键是我们用于登录此站点的标识符,例如我们的OpenID名称.但是因为这些东西是长期笨拙的字符串(并且因为SO允许我们选择不同的登录选项),所以数据库通过用户ID识别我们,该用户ID是生成的数字.该UserID是合成/代理/人工密钥.

  • @Moudiz-IDENTITY(在12c中引入Oracle)是一种生成代理密钥的机制。GUID是另一个。序列是第三位。 (2认同)