patternModerate
What normal form does a surrogate key violate?
Viewed 0 times
whatviolatenormaldoessurrogateformkey
Problem
I have following question:
"What normal form does a surrogate key violate?"
My thought was the 3rd normal form, but I'm not quite sure it's just an assumption i am making. Could someone explain that to me?
"What normal form does a surrogate key violate?"
My thought was the 3rd normal form, but I'm not quite sure it's just an assumption i am making. Could someone explain that to me?
Solution
Arguably, it doesn't.
Adding a surrogate key is an implementation decision (to respect how the RDBMS works) taken at implementation time. During modelling and normalisation, you should end up with BCNF (slightly stricter and more correct 3NF) without surrogate keys
That is, introducing surrogate keys at the start of the design process is wrong. Even though we all do it...
Adding a surrogate key is an implementation decision (to respect how the RDBMS works) taken at implementation time. During modelling and normalisation, you should end up with BCNF (slightly stricter and more correct 3NF) without surrogate keys
That is, introducing surrogate keys at the start of the design process is wrong. Even though we all do it...
Context
StackExchange Database Administrators Q#16554, answer score: 12
Revisions (0)
No revisions yet.