两个相关表和主键独立性问题

时间:2012-01-02 06:42:23

标签: sql primary-key

我想知道,如果我们有两个共享一列的表,并且在第一个表中,这一列是主键,但在第二列中,另一个被选为主键...然后SQL处理公共第二个表中的列只是另一个普通列?因此,如果基于公共列信息搜索第二表,则不存在优化,即两个相关表之间的主键完全独立?

2 个答案:

答案 0 :(得分:3)

是的,它们是独立的:主键对于表来说是完全唯一的。

它们不在表之间共享,即使列的类型相同,但您可以将表的主键作为另一个表中的外键共享。

不执行优化,因为您提到的第二列不是该表中的主键。默认情况下,数据库会根据主键创建一个索引,从而提高在表数据中的查找效果。

答案 1 :(得分:0)

如果在各自表中的两列之间建立了正确的PK-FK关系,则应优化任何连接。