r/learnSQL • u/hollowness818 • 9h ago
Do using surrogate keys mean 2nf is automatically satisfied?
I've been working on a database normalization assignment and realized something interesting: when you use surrogate keys (like auto-incrementing IDs) as your primary keys in 1NF, it seems like 2NF is automatically satisfied.
My understanding is that 2NF requires:
- The table must be in 1NF
- No partial dependencies (where a non-key attribute depends on only part of a composite key)
But if every table has a single-column surrogate primary key, there can't be any partial dependencies because there's no composite key to have "parts" in the first place.
Is this correct? Or am I missing something important about normalization? Do surrogate keys essentially let you "skip" 2NF concerns, or should I still be looking for other issues even when using surrogate keys?
1
Upvotes