1,951 views

Which one is correct w.r.t. RDBMS?

1. primary key $\subseteq$ super key $\subseteq$ candidate key
2. primary key $\subseteq$ candidate key $\subseteq$ super key
3. super key $\subseteq$ candidate key $\subseteq$ primary key
4. super key $\subseteq$ primary key $\subseteq$ candidate key

Any set of attributes that uniquely determine a tuple in a relation is superkey

key (candidate key) is minimal superkey. i.e removal of any attribute from the superkey does not make it superkey anymore

any superset of candidate key is superkey

trivial super key is complete set of attributes in the relation

One among the candidate keys is selected as primary key

primary key ⊆ candidate key ⊆ super key

Superkey - An attribute or set of attributes that uniquely defines a tuple within a relation. However, a superkey may contain additional attributes that are not necessary for unique identification.

Candidate key - A superkey such that no proper subset is a superkey within the relation. So, basically has two properties: Each candidate key uniquely identifies tuple in the relation ; & no proper subset of the composite key has the uniqueness property.

Primary key - The candidate key chosen to identify tuples uniquely within the relation.

so option 2

Option B)

From the set of candidate keys, a key is chosen as primary key.

A super key is a set attributes that can functionally determine all attributes in a given relation. A candidate key is a minimal super key. And hence candidate keys are a subset of super keys in a given relation.

So option 2