Difficulty: Easy
Correct Answer: Incorrect
Explanation:
Introduction / Context:
Surrogate keys are system-generated identifiers (for example, integer sequences or UUIDs) used as primary keys. They have no business meaning and exist solely to uniquely identify rows. This question probes whether surrogate keys are expected to be mutable in a well-designed relational database.
Given Data / Assumptions:
Concept / Approach:
By design, surrogate keys are intended to be stable and never change once assigned. Their immutability ensures that child rows referencing the key remain valid and that replication, caching, audit logs, and foreign key relationships stay consistent. While some DBMS products technically allow updating a primary key column (for example, with cascading updates), doing so contradicts the fundamental rationale for using a surrogate key: stable identity decoupled from business meaning. If you foresee updates, you likely need a natural key (business key) or a separate alternate key for evolving attributes.
Step-by-Step Solution:
Verification / Alternative check:
Review vendor docs: although ON UPDATE CASCADE may exist, design guides and data modeling standards recommend immutable surrogate keys to maintain referential stability and simplify ETL and auditing.
Why Other Options Are Wrong:
Common Pitfalls:
Using a meaningful attribute as a surrogate key; updating primary keys after deployment; confusing surrogate, natural, and alternate keys.
Final Answer:
Incorrect
Discussion & Comments