Does a proper relation allow cells that hold multi-valued entries (e.g., lists or arrays inside a single cell)?
-
ACorrect
-
BIncorrect
-
CAllowed only for non-key attributes
-
DAllowed in denormalized warehouses
Answer
Correct Answer: Incorrect
Explanation
Introduction / Context:First Normal Form (1NF) requires atomicity: each cell in a relation must contain a single, indivisible value from its attribute domain. The question asks whether multi-valued cells are permitted in a relation.
Given Data / Assumptions:
- We are talking about the relational model, not semi-structured stores.
- Atomicity applies uniformly across all attributes.
- Examples of multi-valued entries include comma-separated lists, arrays, or nested tables stored in one cell.
Concept / Approach:Multi-valued cells violate 1NF. In a properly normalized design, each value occupies its own row in a related table connected by keys. This ensures simpler constraints, predictable querying, and avoids update anomalies (insertion, deletion, and modification anomalies).
Step-by-Step Solution:
Check a cell containing “red, blue, green”.Observe that it encodes multiple values in one attribute cell.Conclude this is not atomic and therefore the table is not a proper relation in 1NF.Verification / Alternative check:Normalize by splitting multi-valued data into a child relation (e.g., ProductColor(product_id, color)). Each color then resides in its own tuple, satisfying atomicity.
Why Other Options Are Wrong:
- “Correct” contradicts 1NF.
- Restrictions to non-key attributes or warehouse contexts do not change the relational definition; they are practical compromises, not theoretical allowances.
Common Pitfalls:Storing CSV strings, arrays, or JSON blobs for convenience leads to difficult querying and constraint enforcement.
Final Answer:Incorrect