The problem with guids is they are not guaranteed to be unique: there's a
really large probability that they are unique. You still need to deal with
possible collisions. I'm guessing that NEWSEQUENTIALID is probably less
unique than machine generated guids.


|-----Original Message-----
|From: [email protected] [mailto:ozdotnet-
|[email protected]] On Behalf Of Greg Keogh
|Sent: Monday, 6 February 2012 11:28 AM
|To: 'ozDotNet'
|Subject: RE: Making an application that uses identity keys occassionally
|connected
|
|Folks, most people here seem to dislike Guids as primary keys. The article
|<http://www.codeproject.com/Articles/32597/Performance-Comparison-
|Identity-x-NewId-x-NewSeque>  via Bill is quite sobering, showing that
NEWID is
|a shocking performer, but INDENTIY and NEWSEQUENTIALID perform similarly
|well. After reading that I am unlikely to use NEWID again.
|
|
|
|I would still like to hear convincing arguments against NEWSEQUENTIALID.
|Noonie says his DBAs rejected them (why?). Tony hates looking at them in
the
|debugger (that's not a convincing argument for me). Greg L says you might
as
|well get an INT instead (more details?).
|
|
|
|I hope you'll agree that there are times when you want to give rows an
|immutable primary key. Will you also agree that an IDENTITY INT is not
|immutable because it can change when rows move across databases or when
|rows are reorganised or reloaded. If this is so, how on earth do you stamp
your
|rows with an immutable key without using something like Guids?
|
|
|
|Greg


Reply via email to