Solved

Access 2010 - Relational databases and normalization for newbies

Posted on 2013-06-07
5
408 Views
Last Modified: 2013-07-06
Is there a description of what a relational database is that doesn't induce suicide in the part of the reader?  The links I'm finding are verbose, raise more questions than they answer and do not enlighten.

Ditto the normalization process.  Is there a description of what the normalization process is that a newbie can understand?
0
Comment
Question by:brothertruffle880
5 Comments
 
LVL 61

Assisted Solution

by:mbizup
mbizup earned 125 total points
ID: 39228509
If articles are "inducing suicide",  have you tried videos?

There are many on YouTube on the subject of relational databases and Normalization, including this by Jim Dettman (EE's Access Topic Advisor and long-time Expert):

http://www.youtube.com/watch?v=4YH6gG0Y660
0
 
LVL 84

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 125 total points
ID: 39228519
A good book on the subject is "Database Design for Mere Mortals". It is targeted to the beginner developer, and generally gets you on the right path. Plus, the induced suicide rate is well below the norm <g>.

But do remember this - database normalization is not a series of "do Step A, then do Step B, then Step C". You must first understand your data and how it relates to your real-world issue that you're trying to solve. It's entirely possible that you could have two databases with identical tables that are normalized differently, since the intended purpose of each may be completely different.
0
 
LVL 77

Assisted Solution

by:peter57r
peter57r earned 125 total points
ID: 39228574
You're going to get tons of advice on this so I just want to limit my comments to this.
Normalisation is something that makes it easier to develop better applications.  This does not mean that every aspect of a development is made easier by normalisation, but that taking an app as a whole  it produces better designs.
But 'formal technical' books on normalisation are bordering on a waste of time , in my view, if you are developing with Access the sort of apps found in most businesses. Concentrate on the basic ideas found in what is termed 'third-normal-form' and don't get drawn into the multitude of variations beyond that.
My reference is to what I think is a relatively simple explanation.
http://databases.about.com/od/specificproducts/a/firstnormalform.htm
0
 
LVL 33

Accepted Solution

by:
sarabande earned 125 total points
ID: 39228579
i personally think that wikipedia has a much readable definition of what an RDB is.

http://en.wikipedia.org/wiki/Relational_database

an RDB contains a number of tables. each row of those tables is called a record. the columns (fields) of the table have a name and a predefined type (string, number, date, ...) which is the same for all records (fields). there is neither a dynamic in the number of fields nor is it possible to have multiple values per field. one column or a selection of columns can be defined to build the primary key of the table. additionaly you can define an index on columns or a combination of columns which could help to search for values. you can add records to the table but each new record must have a unique primary key.

two tables of an RDB can be put into a relation by using the primary keys of table 1 in (a) non-primary key column(s) of table 2. for example if you have a table Person with primary key PersonID and a second table BankAccount, then the second table could have a column Owner which stores the PersonID for that account. this model would allow one person to have multiple bank accounts but not vice versa. it is called a 1:n relation.  an n:m relation would be modeled by an additional table 3 which has columns for both the primary-key of table 1 and the primary key of table 2.

normalization gives rules how the fields of the table should be defined to avoid redundancy and how to guarantee integrity. those rules are defined with different normalforms. for example first normalform (1nf) requires that all fields were atomic (simple, indivisible) and that you don't have two records with same values. even 1st normalform is not easy to fulfil for a concrete model. for example if you have a field which contains street and number, it already violates the 1nf whcih would require two fields instead.

Sara
0
 

Author Comment

by:brothertruffle880
ID: 39248037
Hi Peter 57.
I have no problem with the concept and end-goals of normalization.  It's just that I think it's being made more complicated than it needs to be.
0

Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I originally created this report in Crystal Reports 2008 where there is an option to underlay sections. I initially came across the problem in Access Reports where I was unable to run my border lines down through the entire page as I was using the P…
Experts-Exchange is a great place to come for help with solutions for your database issues, and many problems are resolved within minutes of being posted.  Others take a little more time and effort and often providing a sample database is very helpf…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question