识别数据库中的键

Identifying Keys in Database

我知道数据库中使用的所有键的概念,其中包括

    Super Key
    Candidate key
    Primary key
    Foreign Key
    Surrogate key

还有一些人。 我的问题是,在日常生活的例子中,如何从表格中正确识别上述键?

是否有任何提示或技巧可以记住并使用它们来区分上述键?

所有 DBMS 都提供目录或类似的方法来查看应用于 table 的约束。至少,约束通常会告诉您候选键、主键和外键是什么。超级键仅表示包含候选键的任何一组属性。

如果密钥不是从数据库外部的业务域中派生或使用的,则通常将其视为代理项。换句话说,这是一个语义问题,而不是仅仅通过查看数据库就可以确定的东西 table.

请注意,外键和超级键不是键的类型。超级密钥意味着密钥的超集。外键是指参与引用约束的一组属性,引用另一个 table.

中的候选键