gegevens analyse les 5: van erd naar dsd. steps for transforming a data model into a database design

19
Gegevens Analyse Les 5: van ERD naar DSD

Upload: lillian-mitchell

Post on 18-Jan-2016

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Gegevens Analyse

Les 5: van ERD naar DSD

Page 2: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Steps for Transforming aData Model into a Database Design

Page 3: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create a Table for Each Entity

EMPLOYEE (EmployeeNumber, EmployeeName, Phone,Email, HireDate, ReviewDate, EmpCode)

Note shadowless

table

Primary key is designated by

key symbol

Page 4: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Select the Primary Key

• The ideal primary key is short, numeric and fixed

• Surrogate keys meet the ideal, but have no meaning to users

Page 5: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Specify Column Properties:Null Status

• Null status indicates whether or not the value of the column can be NULL

Begin intermezzo: Deze stof wordt verder behandeld in vervolgvakken.

Page 6: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Specify Column Properties:Data Type

• Generic Data Types:– CHAR(n)– VARCHAR(n)– DATE– TIME– MONEY– INTEGER– DECIMAL

Page 7: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Specify Column Properties:SQL Server Data Types

Einde intermezzo.

Page 8: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Verify Normalization

• The tables should be normalized based on the data model

• Verify that all tables are:– BCNF– 4NF

Wij hebben dit al gedaan!

Page 9: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create Relationships:1:1 Strong Entity Relationships

• Place the key of one entity in the other entity as a foreign key:– Either design will work – no parent, no child– Minimum cardinality considerations may be

important:• O-M will require a different design that M-O, and• One design will be very preferable

Page 10: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create Relationships:1:N Strong Entity Relationships

• Place the primary key of the table on the one side of the relationship into the table on the many side of the relationship as the foreign key

• The one side is the parent table and the many side is the child table, so “Place the key of the parent in the child”

Page 11: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create Relationships:1:N Strong Entity Relationships

Page 12: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create Relationships:N:M Strong Entity Relationships

• In an N:M strong entity relationship there is no place for the foreign key in either table:– A COMPANY may supply many PARTs– A PART may be supplied by many COMPANYs

Page 13: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create Relationships:N:M Strong Entity Relationships

• The solution is to create an intersection table that stores data about the corresponding rows from each entity

• The intersection table consists only of the primary keys of each table which form a composite primary key

• Each table’s primary key becomes a foreign key linking back to that table

COMPANY_PART_INT (CompanyName, PartNumber)

Page 14: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Create Relationships:N:M Strong Entity Relationships

COMPANY_PART_INT (CompanyName, PartNumber)

FIG 6.10

Page 15: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Relationships Using ID-Dependent Entities:Association Relationships

• An intersection table:– Holds the relationships between two strong entities in

an N:M relationship– Contains only the primary keys of the two entities:

• As a composite primary key• As foreign keys

• An association table:– Has all the characteristics of an intersection table– PLUS it has one or more columns of attributes

specific to the associations of the other two entities

Page 16: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Relationships Using ID-Dependent Entities:Association Relationships

QUOTATION (CompanyName, PartNumber, Price)

Page 17: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Relationships Using ID-Dependent Entities:Multivaled (meerwaardige) Attributes

As a data

model

As a set of tables

Page 18: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Relationships Using ID-Dependent Entities:Archetype/Instance Pattern

As a data

model

As a set of tables

Page 19: Gegevens Analyse Les 5: van ERD naar DSD. Steps for Transforming a Data Model into a Database Design

Relationships Using Weak Entities:Archetype/Instance Pattern

As a data

model

As a set of tables