Database Design
Discussion regarding general database design
Announcements
- Link
Database Design Resources
The following list of database design resources is not intended to be exhaustive or ‘the correct list’. Items are included simply because one of the Moderators knew the material and offered it as a suggestion. If you wish to offer suggestions for inclusion, please do so.
Books
A Developer's Guide to Data Modeling for SQL Server: Covering SQL Server 2005 and 2008
Eric Johnson and Joshua Jones
An Introduction to Database Systems
Chris Date
Applied Mathematics for Database Professionals
Lex de Haan, Toon Koppelaars
Architecting Regulatory-Compliant Architectures
Mike Walker, MicrosoftGraeme Simsion and Graham Witt
Database Modeling and Design: Logical Design
Toby Teorey
Information Modeling and Relational Databases
Terry Halpin
Practical Issues in Database Management: A Reference for the Thinking Practitioner
Fabian Pascal
Pro SQL Server 2008 Relational Database Design and Implementation
Louis Davidson, Kevin Kline, et al
Online Resources
A Simple Guide to Five Normal forms and Relational Database Theory
http://www.bkent.net/Doc/simple5.htmData Modeling vs. Database Design
http://www.aisintl.com/case/library/R-Theory_vs_ER/r-theory_vs_er.htmlData Models
http://www.databaseanswers.org/data_models/index.htmDatabase Design - Ten Common Database Design Mistakes, Louis Davidson
http://www.simple-talk.com/sql/database-administration/ten-common-database-design-mistakes/Database Design Issues -EAV Model Discussion (Querying an EAV Table)
http://tinyurl.com/yks8huDatabase Design Issues –EAV and OTLT
http://tonyandrews.blogspot.com/2004/10/otlt-and-eav-two-big-design-mistakes.htmlDatabase Design ROI by Paul Nielsen
http://www.sqlserverbible.com/files/databasedesignroi.pdfIntroduction to the Unified Dimensional Model (UDM)
http://technet.microsoft.com/en-us/library/ms345143(SQL.90).aspxLibrary of database models
http://www.databaseanswers.org/data_models/On Normalization and Repeating Groups by Fabian Pascal
http://www.dbdebunk.com/page/page/622318.htmORM white paper
http://www.orm.net/pdf/ORMwhitePaper.pdfOverview of the Relational Model
http://www.utexas.edu/its/archive/windows/database/datamodeling/rm/overview.htmlUnderstanding Data Model Quality, Graeme Simsion
http://www.tdan.com/view-articles/5100 - Link
Please READ before Posting or Replying to Posts
Out of Scope
Some topics are out of scope for this forum.
1. Bugs, Product Decisions, and Feedback: The purpose of this forum is not to ask the product team why decisions were made and to ask them to make other changes. That feedback belongs in Connect. The purpose of this forum is to help you out with specific issues, if possible. Please post your feedback via Connect:
https://connect.microsoft.com/SQLServer
Rules of Conduct
· Relevance to Topics: We encourage you to keep your postings as close to the subject as possible.
· Respect: Please be respectful of other participants, and their contributions; avoiding insults, demeaning remarks and slurs.
· Tolerance: Please don’t assume someone’s curtness was meant to insult, slur, or demean you.
· Confidentiality: Confidential information should not be posted. This is a publicly available forum.
· Appropriate Language: Please keep the conversation on a professional level, avoiding any hint of profanity in your interactions.
· Advertising/Solicitation: Advertisements should not be posted, and will be removed.
Forum Moderators may, at their discretion, edit posts for clarity, readability and inappropriate language; split post into separate threads when appropriate; and delete post that do not positively contribute to the thread. Failure to comply with these 'Rules of Conduct' may result in your posts being edited to remove the offending comments, censure, or expulsion from participating in the Forums. The bottom line is: this Forum should feel like a ‘safe’ place to ask hard questions that invoke passionate responses.
Marking AnswersBy their very nature, many database design questions will not have a easily decernible 'answer'. You are encouraged to give folks 'credit' for helping you when appropriate. If someone's response was 'Helpful', use the 'Vote as Helpful' button. If a response answered some part of your question, or provided you one or more clues that led you to a solution, then use the 'Mark as Answer' option. Just as a thread may evolve into multiple questions, it may also have more than one 'Answer'.
Welcome to the Database Design Forum
This is a Forum for questions and discussions about database designs for Microsoft technologies, including: SQL Server, Access, SQL Azure, SQL Express, SQL Compact, etc. Often Database Designs will be generic and can be ported to any vendor's technology. Design problems that are best solved with other technologies will be welcomed and addressed to the best of our knowledge and ability.
We ask that you recognize that database design is a mixture of art and science. You may receive conflicting suggestions, for there can be multiple paths to a workable solution. You will have to use your own judgment and knowledge of your business requirements to determine the best solution for your particular problem. The 'right' design is compounded by many factors, including business, regulatory, hardware/software requirements, as well as staff expertise. We also encourage you to share your experiences with a particular design issue if it will serve to help others encountering similar problems.
In order to receive useful responses, please spend some time and properly present your scenario. Attempts to 'save time and effort' by cutting out parts of the scenario will often lead to wasted time and effort as the suggestions have to be discarded because they don't work with other parts of the unseen puzzle.
But there are limits to what you can expect from volunteers through a disconnected medium. The questions most likely to receive a good and targeted answer, are those that present a small problem, that give a very clear description of that problem within its context, and that are placed by people with a fair understanding of the subject who need help getting over a few nasty bumps. The questions that are almost impossible to answer satisfactorily are those that present a huge problem, with no clear description, and asked by someone totally new to the subject matter.
We hope that you will understand when we say that most of us that volunteer our time on this Forum do so in order to help folks learn. We will be pleased if you find the Forum to be useful. However, it is difficult or impossible for us to engage with folks privately. We don't have time to do both, and our commitment is help folks using the Forums.
Do not hesitate to read all of the threads, join in the discussions, offer your own experiences and information, and ask questions to increase your knowlege. Seek out blogs from those who write in a manner that you appreciate, and consider reviewing the Database Design Resources for additional guidance and help.
Filtering and SortingUse these options to narrow down the question and discussion list.
- 02160

Purpose of the Database Design Forum - READ FIRST
Ed Price - MSFTMicrosoft EmployeeThursday, January 03, 2013 11:59 PM - 151

Import data adds sysdiagram in user table list in SSMS
IT researcher 19 hours 24 minutes ago - 463

DB from 2005 to 2008 r2
mrvsfly 23 hours 52 minutes ago - 3139

Achieve tree view in sql tables
Samsul hudha Saturday, June 15, 2013 6:29 AM - 353

Generate scripts
IT researcher 19 hours 29 minutes ago - 155

Use of SQL Server Browser
selvakumars 23 hours 57 minutes ago - 6103

Configuration File Design
wgcampbell Saturday, June 15, 2013 4:18 PM - 5172

Shared SQL Composite Primary Key Value
Miroslav Endys Tuesday, June 11, 2013 8:06 PM - 10239

Table design for 'large' number of records
Warren M Wednesday, June 05, 2013 10:29 PM - 4140

Changing SQL Server Collation
CanadaBoy Tuesday, June 11, 2013 9:41 PM - 1111

sql server
auwi987 Wednesday, June 12, 2013 2:11 AM - 12140

Can Renaming a table change its schema
DJ Rele Tuesday, June 11, 2013 2:06 PM - 4157

Help in design of Document template input builder
Kamran Shahid Monday, June 10, 2013 9:36 AM - 2156

Multiple Sequence Objects per Table
Kent WaldropMicrosoft Community ContributorSunday, June 09, 2013 12:21 PM - 94303

How are SQL Server 2012 sequences different from Auto-Increment column?
OldEnthusiast Saturday, April 07, 2012 5:52 PM - 2171

Question about Cardinality and Optionality
Akua Asamoah Thursday, June 06, 2013 10:16 PM - 2161

Database design suited best for this purpose
D. Chatterjee Wednesday, June 05, 2013 5:31 AM - 6246

Change order of records in database
elmira bfrhn Sunday, June 02, 2013 10:54 AM - 7307

Draw an ER diagram of library management
chaocanha Thursday, May 30, 2013 11:27 PM - 8351

Normalization (Design)
AngaraKiran Tuesday, May 21, 2013 1:37 AM - 3432

Schema Design
Madhuri Teelair Wednesday, May 22, 2013 4:46 PM

