外键引用PK与外键引用唯一键

时间:2016-04-20 19:19:55

标签: sql

什么被认为是更好/标准的方法:

  1. 引用另一个表的主键的外键(PK是自动递增数值)。

  2. 引用另一个表的唯一键的外键(唯一键列包含有意义的数据而不是自动生成的值)。

  3. 一种方法相对于另一种方法有任何性能优势吗?

    理想情况下,唯一键列也应该是PK,但这是我无法改变的。

1 个答案:

答案 0 :(得分:0)

我喜欢使用唯一键作为主键的想法,特别是如果您必须将唯一键数据存储用于其他目的。令人遗憾的是,你无法改变,所以我不确定你在这个问题的哪个方面。但是,我想到的唯一性能问题是密钥的大小,因为某些数据类型显然比其他数据类型使用更多的存储空间,这最终会影响查询性能。无论哪种方式都应该强制引用完整性并防止孤立记录。