itechcs: Your database design depends on your application.
Basically a role playing game that involves levels, classes, races, skills, ability scores, and such. Although as opposed to a whole game, I am actually focusing on making a website that will be like a Rulebook for it. I already know the how I will be doing it (I did it in ASP 1.1 w/ XML years ago) but I want to redo it and make it easier to work with and also am using it as a chance to learn ASP.NET 2.0, SQL Server 2005, and actually have it hosted somewhere as opposed to just on my computer to read.
The actual design of it I already have someone a couple people willing to look it over. At this point I am more trying to read up on articles like the one above to get myself more familiar with SQL Server 2005 and some of the main areas that crop up as problems and also what features I can use and their purpose. Sometimes reading a book it is hard to see exactly what something could be used for. But a thread on Naming Conventions (of all things) made me really want to learn to use Schemas.
As the article mentioned, sequential GUID's are not recommended if privacy is a big concern. My shopping cart uses GUID's for most tables (but not sequential). From that standpoint, I think GUID's are a good way to generate a random string to be used as an identifier and a primary key.
Yeap, I have been using non-seq GUIDs because the membership database that ASP.NET uses, uses them, so I know them. I have been using them everywhere, and have been reading up a bit on them (thou it became a concern when I was looking up normalization and performance) and found out the performance hit it could invoke.
Which today led me to that article. So I am torn between that or making a "Comb" (wish I had tagged that article) or using an Identity.
The issue I have with the Identity is that if I do turn the website database into a game database that a User would download and possibly MOD. I don't want their MOD to collide with another MOD due to a Primary Key saying no.
The Comb can be set up to be not as troublesome to index, and not as harsh on performance, but will let me make sure its almost positivly going to be unique. Makes people wanting to add Their Super Duper Killer Class happy.
The Sequential GUID showed some promise also. Its something I'd read up a bit more on first. Along with rowguidid or something like that.
What type of application will you be using?
Web Based Database to look up and read the rules of the game.
The design of it I am having no real issues with, just more looking for "Fun Facts" like that. Although if you want to answer a couple questions on normalization by all means let me know. I know what it IS, but not all the RULES of it.
Sorry about rambling and repeating myself if I did. If you like I can more deifnitivly lay out what I am doing, even if its just to satisfy your curiousity :)
-Wilson Gearld Mead III
www.rangoric.com (Rather Blah)
blog.rangoric.name (Closer to Not Blah)