Join | Login | Why Join?   
SQL Server, Oracle, DB2, Sybase, MySQL Help - SSWUG.ORG HACKER SAFE certified sites prevent over 99.9% of hacker crime.
Search SSWUG:   
 
Access to 509 free guest articles, discussions and more, just create your free SSWUG User ID:
Email address:  
This will be your login ID - we'll email you your password - you'll even receive the newsletter, opt-out at any time.
Email to Friend //  Discuss Article //  Rate Article //  Digg Article //  Add to Del.icio.us //  Add to Technorati

Full site membership is required for this article. Already a full member? Login here.
You currently have a guest membership. You can upgrade to full site membership here (free trial available).

Surrogate Keys, Primary Keys and IDENTITY


 Article Abstract:

(Brian Walker) The debate about surrogate keys is a heated argument (one of several) with no end in sight. Here's another viewpoint to consider.

 Read this article...

 Related Articles - For Members.
All Articles By Author

Second Normal Form (2NF)
Sequence Objects and Identity Columns
When should one implement a surrogate key?
Registry manipulation from SQL Server
Tips for using SQL Server 2005 constraints (Part 2)
Troubleshooting identity columns problems
Alter View, Create Function: Encrypting Data in SQL Server 2005 Part II
SQL Server Constraints Optimization Tips
How to implement the database primary key with a surrogate key



Key (Please note):
(R) - registration may be required for access at the target site
($) - target site may require paid membership for access to this or other content


Reader Comments: Post Your Comments/Feedback

RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 12:31:51 PM)
The following article should take care of the debate

http://www.dbmsmag.com/9805d05.html




RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 6:46:56 PM)
You said:
"It's hard for me to respect the opinions of those who argue with a near religious fervor, especially when they almost always resort to demeaning others"

But you are the one who made the debate a personal attack. Clearly your own statements are not to be respected by your own standards.



RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 6:48:55 PM)
Let me correct that last post. I forgot to close the quote before the word Clearly and since the carraige return was not kept in the comment the typo makes it appear inaccurate. The quote from you is: "It's hard for me to respect the opinions of those who argue with a near religious fervor, especially when they almost always resort to demeaning others "



RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 6:54:16 PM)
This rebuttal will be in several comments because of the 500 character limit. It should have been obvious that the statement that Celko and I were the only ones who understand the proper definition of a primary key should not have been taken literally. And just as the world was not flat even though most said it was so, the fact that many people misunderstand the definition of a primary key does not make their definition correct.





RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 7:14:32 PM)
Three more comments and I am done. First, quoting Kent Beck in Extreme Programming Explained, who is quoting Will Rogers: "It ain't what you don't know that gets you in trouble. It's what you know that ain't so."




RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 7:16:12 PM)
Second: Let me explain the difference between a primary key, a foreign key, and a surrogate key. A surrogate key, such as an identiy column, can be used to define a foreign key constraint just as a primary key can. But a surrogate key can never guarantee entity integrity. That is the role of the primary key.



RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 7:17:22 PM)
Second comment concluded due to 500 character limit: Many developers, whose main expertise is in areas other than database design, mistakenly treat primary keys as the guarantor of referential integrity. That can be the role of the primary key, when appropriate, or of a surrogate key when the primary key is not suitable.




RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 7:18:05 PM)
The third point: If you can't debate the issues and the logic, then attack the person. That's all this article amounts to. It seems to be a much better demonstration of Mr. Walker's personal character than of the character of primary keys in database design.



RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 7:21:26 PM)
Oh geeze, I just can't help myself. One more comment: Your opening should have read, "Dale Preston, WHOM* I had never heard of before." Go figure, huh? *=capitalization added for highlighting purposes.



RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 8:21:55 PM)
Ok.. I know I said I was done, but I was just re-reading your article and laughing out loud. Do you expect people to take you and your writing seriously when you actually equate personal character to one's viewpoint on the identity column as primary key debate? You're funny.



RE: Surrogate Keys, Primary Keys and IDENTITY
(posted: 8/26/2005 10:28:14 PM)
http://www.dalepreston.com/Blog/2005/08/identity-crisis-cured_26.html



RE: Surrogate Keys, Primary Keys and IDENTITY
by Herb Overstreet (posted: 1/29/2007 11:59:48 AM)
I take another look at using surrogate keys that has not been mentioned in any of the two groups' responses. By using these I found that below the surrogate key's master, the data is unusable without knowing its associated normal data value. I only have to encrypt the masters rather than the entire database. With the problems of safeguarding data one would think this is an added method to do so.



Email to Friend //  Discuss Article //  Rate Article //  Digg Article //  Add to Del.icio.us //  Add to Technorati

   




 

[ Register ] [ Webcasts ] [ Podcasts ] [ Newsletter Archive ] [ RSS/Feeds ]
[ About ] [ Advertise ] [ Contact ] [ Privacy ] [ Terms of Service ]
[ Link to SSWUG ] [ List Server Archives ] [ Recent Orig. Content ]
(c) 1997-2008, Bits on the Wire, Inc.  (0)

Some names and products covered by SSWUG are the registered trademarks of their respective owners.
DAA10354WWW004