MS Access. Most A2 projects use MS Access Has sufficient depth to support a significant project. Relational Databases. Fairly easy to develop a good user.

Slides:



Advertisements
Similar presentations
Normalisation.
Advertisements

Normalization What is it?
Normalization and Other Data Modeling Methods There are many paths to the top of the mountain but the view is always the same Chinese proverb.
Normalisation Ensuring data integrity in database design 1.
The Relational Model System Development Life Cycle Normalisation
Normalization of Database Tables
DAVID M. KROENKE’S DATABASE PROCESSING, 10th Edition © 2006 Pearson Prentice Hall 3-1 COS 346 Day 5.
Database Design Conceptual –identify important entities and relationships –determine attribute domains and candidate keys –draw the E-R diagram Logical.
Database Normalization Il-Han Yoo CS 157A Professor: Sin-Min Lee.
1 NORMALISATION. 2 Introduction Overview Objectives Intro. to Subject Why we normalise 1, 2 & 3 NF Normalisation Process Example Summary.
Microsoft Access 2002 By Ian Cole Lecturer in ICT.
SLIDE 1IS 257 – Fall 2004 Database Design: Normalization and The Relational Model University of California, Berkeley School of Information.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 5 The Relational Model and Normalization.
Project and Data Management Software
NORMALIZATION N. HARIKA (CSC).
Page 1 ISMT E-120 Introduction to Microsoft Access & Relational Databases The Influence of Software and Hardware Technologies on Business Productivity.
Copyright © 2016 McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill Education.
Normalization.
File and Database Design SYS364. Today’s Agenda WHTSA DBMS, RDBMS, SQL A place for everything and everything in its place. Entity Relationship Diagrams.
Week 6 Lecture Normalization
Lecture 12 Inst: Haya Sammaneh
Modelling Techniques - Normalisation Description and exemplification of normalisation.Description and exemplification of normalisation. Creation of un-normalised.
CREATE THE DIFFERENCE Normalisation (special thanks to Janet Francis for this presentation)
Cambridge TEC - Level 3 Certificate/Diploma IT. ICT Dept ScenarioLO1LO2LO3.
Concepts and Terminology Introduction to Database.
Fundamentals, Design, and Implementation, 9/e. Database Processing: Fundamentals, Design and Implementation, 9/e by David M. KroenkeChapter 4/2 Copyright.
Normalization A technique that organizes data attributes (or fields) such that they are grouped to form stable, flexible and adaptive entities.
RDBMS Concepts/ Session 3 / 1 of 22 Objectives  In this lesson, you will learn to:  Describe data redundancy  Describe the first, second, and third.
Concepts of Database Management, Fifth Edition
The Relational Model and Normalization R. Nakatsu.
1 DATABASE SYSTEMS DESIGN IMPLEMENTATION AND MANAGEMENT INTERNATIONAL EDITION ROB CORONEL CROCKETT Chapter 7 Normalisation.
SALINI SUDESH. Primarily a tool to validate and improve a logical design so that it satisfies certain constraints that avoid unnecessary duplication of.
Normalization Copyright © 1999 Patrick McDermott College of Alameda
In this chapter, you learn about the following: ❑ Anomalies ❑ Dependency and determinants ❑ Normalization ❑ A layman’s method of understanding normalization.
CORE 2: Information systems and Databases NORMALISING DATABASES.
Normalization Well structured relations and anomalies Normalization First normal form (1NF) Functional dependence Partial functional dependency Second.
1 5 Normalization. 2 5 Database Design Give some body of data to be represented in a database, how do we decide on a suitable logical structure for that.
What's a Database A Database Primer Let’s discuss databases n Why they are hard n Why we need them.
11/07/2003Akbar Mokhtarani (LBNL)1 Normalization of Relational Tables Akbar Mokhtarani LBNL (HENPC group) November 7, 2003.
Lecture No 14 Functional Dependencies & Normalization ( III ) Mar 04 th 2011 Database Systems.
M1G Introduction to Database Development 4. Improving the database design.
Component 4/Unit 6d Topic IV: Design a simple relational database using data modeling and normalization Description and Information Gathering Data Model.
©NIIT Normalizing and Denormalizing Data Lesson 2B / Slide 1 of 18 Objectives In this section, you will learn to: Describe the Top-down and Bottom-up approach.
In this session, you will learn to: Describe data redundancy Describe the first, second, and third normal forms Describe the Boyce-Codd Normal Form Appreciate.
Creating Databases Data normalization. Integrity and Robustness. Work session. Homework: Prepare short presentation on enhancement projects. Continue working.
Normalization. 2 u Main objective in developing a logical data model for relational database systems is to create an accurate representation of the data,
Chapter 56 Relational Database Design Compiled by Eddie Moorcroft.
Normalisation RELATIONAL DATABASES.  Last week we looked at elements of designing a database and the generation of an ERD  As part of the design and.
Normalization and Other Data Modeling Methods There are many paths to the top of the mountain but the view is always the same Chinese proverb.
Data modeling Process. Copyright © CIST 2 Definition What is data modeling? –Identify the real world data that must be stored on the database –Design.
Brian Thoms.  Databases normalization The systematic way of ensuring that a database structure is suitable for general-purpose querying and free of certain.
1 CS 430 Database Theory Winter 2005 Lecture 7: Designing a Database Logical Level.
Normalization. Overview Earliest  formalized database design technique and at one time was the starting point for logical database design. Today  is.
Normalization ACSC 425 Database Management Systems.
Logical Database Design and Relational Data Model Muhammad Nasir
SLIDE 1IS 257 – Fall 2006 Normalization Normalization theory is based on the observation that relations with certain properties are more effective.
What Is Normalization  In relational database design, the process of organizing data to minimize redundancy  Usually involves dividing a database into.
1 CS490 Database Management Systems. 2 CS490 Database Normalization.
NORMALISATION OF DATABASES. WHAT IS NORMALISATION? Normalisation is used because Databases need to avoid have redundant data, which makes it inefficient.
Relational Databases – Further Study I think we’ve covered all you need to know for GCSE about relational databases I’m not aware of any practical coursework.
Normal Forms 1NF – A table that qualifies as a relation is in 1NF. (Back)(Back) 2NF – A relation is in 2NF if all of its nonkey attributes are dependent.
Understanding Data Storage
Revised: 2 April 2004 Fred Swartz
SEEM3430: Information Systems Analysis and Design
Normalization Karolina muszyńska
Database Normalization
Database Normalization
Normalization Referential Integrity
Normalization By Jason Park Fall 2005 CS157A.
Normalization By Jason Park Fall 2005 CS157A.
Presentation transcript:

MS Access

Most A2 projects use MS Access Has sufficient depth to support a significant project. Relational Databases. Fairly easy to develop a good user interface. It’s widely available !

MS Access However, it is a complex package ! ALWAYS more than one way to do a task. Books on it are hundreds of pages long and daunting for students (and staff). To do some tasks VBA is required and again books on VBA are hundreds of pages long.

Database Design

The user should only see the User Interface. Good, consistent design is important here. But, encourage students to concentrate on what gets the marks – not too much time on “eye-candy”. However, the heart of a good database application is the data itself and getting the design of this right, at the start, is the key to a successful project.

Lets get NORMAL The concept of Normalisation is covered in the theory element of all boards. Normal Forms First normal form Second normal form Third normal form Also you may come across – but not required for the course ! Boyce-Codd normal form Fourth normal form Fifth normal form Domain/key normal form Sixth normal form More info on NF1-6 If interested.

Data NOT Normalised Simple HOTEL BOOKING – Flat file database. Click to Open Database The initial Flat file is not normalised and includes many of the problems associated with such an approach. Open the database and spot them - view the video for my observations. FIELD LIST Click to Run Video Access Examples>Normalising>UnNormalised Data

First to Third Normal Forms First Normal Form (If NOT in 1NF then searching becomes difficult and space is often wasted.) Data should be “atomic” – each field should store a single item of data there must be no repeated fields. So to get data into 1NF Make a separate table for each set of related attributes give each table a primary key.

Starting point This may be the first attempt however there are still problems: Party leaders can make multiple bookings and each room can be booked by many leaders. We still have the repeated fields for rooms booked. Party Leaders Bookings

Dealing with the repeated data Rooms Create a new Entity – Rooms A new key RoomID has been created to allow flexibility in room naming while maintaining a simple compact key.

We still have a Many to Many Relationship to remove. Each customer may make many bookings Each booking may have many rooms Each room may be in many bookings Party Leaders Bookings Rooms Foreign Key

Introduce Booking_Details Entity Now in FIRST NORMAL Form Party Leaders Bookings Rooms Booking_Details has a compound key. Foreign Key Booking_Details

In Second Normal Form if is already in first normal form has no fields that aren't dependent on the whole of the key Only entities with a composite key need to be checked. Is a non-key field dependent on only part of the key?

Party Leaders Bookings Rooms Only Booking_Details has a compound key and because we had resolved the repeated fields with the Rooms Table first NO non-key field in Booking_Details is dependent on part of the key. So we are already in SECOND Normal Form ! Foreign Key Booking_Details

However, to illustrate the point If we had structured the Bookings_Details like this Bookings_Details Then the RoomName and Capacity would only have been dependent on part of the key (RoomID) and we would not have reached SECOND Normal Form.

Resolve it by: Bookings_Detail s Removing the dependent fields to a new table Copy the partial key into the new table and link back through this. Bookings_Details Rooms Foreign Key

Access Relationships table in SECOND Normal Form version

Party Leaders A database is in THIRD Normal Form if it: is already in second normal form it has no non-key dependencies i.e. there are no fields that are dependent on fields that are not part of the key. In the Party Leaders table : Town and County could be determined from the PostCode. So, to reach THIRD Normal Form remove them to a new table and link via postcode. Foreign Key

THIRD Normal Form BUT… Party Leaders Bookings Rooms Foreign Key Booking_Details Foreign Key

Don’t store what can be easily calculated when needed. So remove Number_of_Nights from Bookings Party Leaders Bookings Rooms Foreign Key Booking_Details Foreign Key

Final Access Relationship Diagram

Alternative - why might this be better in practice?

Final Thoughts In practice, thinking about the Entities involved usually will get you to 3NF directly. So don’t start from a flat file and work through ! [But, students do need to know the theory.] Few large scale commercial databases operate fully Normalised – keeping frequently used data in the same table (Postcode, and postal town?) can save considerable lookup time. So, De-normalisation can sometimes be justified. But, NOT often within the scale of an A level project. {Is it worth an extra table for PostCode & if so should PostCode be split into Area and Street codes????}

For all entities “Every attribute is dependent on the key, the whole key and nothing but the key” So help me Codd. END

Full List of Normal Forms 1NF Eliminate Repeating Groups - Make a separate table for each set of related attributes, and give each table a primary key. 2NF Eliminate Redundant Data - If an attribute depends on only part of a multi-valued key, remove it to a separate table. 3NF Eliminate Columns Not Dependent On Key - If attributes do not contribute to a description of the key, remove them to a separate table. BCNF Boyce-Codd Normal Form - If there are non-trivial dependencies between candidate key attributes, separate them out into distinct tables. 4NF Isolate Independent Multiple Relationships - No table may contain two or more 1:n or n:m relationships that are not directly related. 5NF Isolate Semantically Related Multiple Relationships - There may be practical constrains on information that justify separating logically related many-to-many relationships. ONF Optimal Normal Form - a model limited to only simple (elemental) facts, as expressed in Object Role Model notation. DKNF Domain-Key Normal Form - a model free from all modification anomalies.