materi-normalisasi

Upload: frantri-nilianto

Post on 04-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Materi-Normalisasi

    1/34

    5

    Some Normalization Examples

    1

  • 7/31/2019 Materi-Normalisasi

    2/34

    5

    Dependencies: Definitions Multivalued Attributes(or repeating groups): non-

    key attributes or groups of non-key attributes the

    values of which are not uniquely identified by(directly or indirectly) (not functionally dependent on)the value of the Primary Key (or its part).

    2

    STUDENT

    Stud_ID Name Course_ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    3/34

    5

    Dependencies: Definitions

    Partial Dependency when an non-key

    attribute is determined by a part, but not thewhole, of a COMPOSITE primary key.

    Partial

    3

    CUSTOMER

    Cust_ID Name Order_ID

    101 AT&T 1234

    101 AT&T 156

    125 Cisco 1250

    Dependency

  • 7/31/2019 Materi-Normalisasi

    4/34

    5

    Dependencies: Definitions

    Transitive Dependency when a non-key attribute determines another non-keyattribute. Transitive

    4

    EMPLOYEE

    Emp_ID F_Name L_Name Dept_ID Dept_Name

    111 Mary Jones 1 Acct

    122 Sarah Smith 2 Mktg

  • 7/31/2019 Materi-Normalisasi

    5/34

    5

    Normal Forms: Review

    Unnormalized There are multivaluedattributes or repeating groups

    1 NF No multivalued attributes or

    5

    repeating groups.

    2 NF 1 NF plus no partial

    dependencies 3 NF 2 NF plus no transitive

    dependencies

  • 7/31/2019 Materi-Normalisasi

    6/34

    5

    Example 1: Determine NF

    ISBN Title

    ISBN Publisher

    Publisher Address

    All attributes are directlyor indirectly determined

    by the primary key;therefore, the relation is

    at least in 1 NF

    6

    BOOK

    ISBN Title Publisher Address

  • 7/31/2019 Materi-Normalisasi

    7/34

    5

    Example 1: Determine NF

    ISBN Title

    ISBN Publisher

    Publisher Address

    The relation is at least in 1NF.

    There is no COMPOSITEprimary key, therefore therecant be partial dependencies.

    Therefore, the relation is atleast in 2NF

    7

    BOOK

    ISBN Title Publisher Address

  • 7/31/2019 Materi-Normalisasi

    8/34

    5

    Example 1: Determine NF

    ISBN Title

    ISBN Publisher

    Publisher Address

    Publisher is a non-key attribute,and it determines Address,

    another non-key attribute.Therefore, there is a transitivedependency, which means that

    the relation is NOT in 3 NF.

    8

    BOOK

    ISBN Title Publisher Address

  • 7/31/2019 Materi-Normalisasi

    9/34

    5

    Example 1: Determine NF

    ISBN Title

    ISBN Publisher

    Publisher Address

    We know that the relation is atleast in 2NF, and it is not in 3NF. Therefore, we concludethat the relation is in 2NF.

    9

    BOOK

    ISBN Title Publisher Address

  • 7/31/2019 Materi-Normalisasi

    10/34

    5

    Example 1: Determine NF

    ISBN Title

    ISBN Publisher

    PublisherAddress

    In your solution you will write the

    following justification:1) No M/V attributes, therefore atleast 1NF

    2) No partial dependencies,therefore at least 2NF

    10

    BOOK

    ISBN Title Publisher Address

    3) There is a transitive dependency(Publisher Address), therefore,

    not 3NFConclusion: The relation is in 2NF

  • 7/31/2019 Materi-Normalisasi

    11/34

    5

    Product_ID Description

    Example 2: Determine NF

    All attributes are directly orindirectly determined by the

    primary key; therefore, the relation

    11

    ORDER

    Order_No Product_ID Description

    is at least in 1 NF

  • 7/31/2019 Materi-Normalisasi

    12/34

    5

    Product_ID Description

    Example 2: Determine NF

    The relation is at least in 1NF.There is a COMPOSITE Primary Key (PK) (Order_No,

    Product_ID), therefore there can be partial

    12

    ORDER

    Order_No Product_ID Description

    dependencies. Product_ID, which is a part of PK,determines Description; hence, there is a partialdependency. Therefore, the relation is not 2NF. No

    sense to check for transitive dependencies!

  • 7/31/2019 Materi-Normalisasi

    13/34

    5

    Product_ID Description

    Example 2: Determine NF

    We know that the relation is at leastin 1NF, and it is not in 2 NF.

    Therefore we conclude that the

    13

    ORDER

    Order_No Product_ID Description

    relation is in 1 NF.

  • 7/31/2019 Materi-Normalisasi

    14/34

    5

    Product_ID

    Description

    Example 2: Determine NF

    In your solution you will write thefollowing justification:

    1 No M/V attributes therefore at least 1NF

    14

    ORDER

    Order_No Product_ID Description

    2) There is a partial dependency(Product_ID Description), therefore

    not in 2NFConclusion: The relation is in 1NF

  • 7/31/2019 Materi-Normalisasi

    15/34

    5

    Example 3: Determine NF Part_ID Description

    Part_ID Price Part_ID, Comp_ID No

    Comp_ID and No are notdetermined by the primarykey; therefore, the relationis NOT in 1 NF. No sense

    in looking at partial ortransitive dependencies.

    15

    PART

    Part_ID Descr Price Comp_ID No

  • 7/31/2019 Materi-Normalisasi

    16/34

    5

    Example 3: Determine NF

    Part_ID Description

    Part_ID Price

    Part_ID, Comp_ID No

    In your solution you will writethe following justification:

    1) There are M/V attributes;therefore, not 1NF

    Conclusion: The relation is notnormalized.

    16

    PART

    Part_ID Descr Price Comp_ID No

  • 7/31/2019 Materi-Normalisasi

    17/34

    5

    Bringing a Relation to 1NF

    STUDENT

    17

    _ _

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    18/34

    5

    Bringing a Relation to 1NF Option 1: Make a determinant of the

    repeating group (or the multivaluedattribute) a part of the primary key.

    Composite

    18

    STUDENT

    Stud_ID Name Course_ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    19/34

    5

    Bringing a Relation to 1NF Option 2: Remove the entire repeating group from

    the relation. Create another relation which would

    contain all the attributes of the repeating group, plusthe primary key from the first relation. In this newrelation, the primary key from the original relation

    19

    comprise a primary key.STUDENT

    Stud_ID Name Course_ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    20/34

    5

    Bringing a Relation to 1NFSTUDENT

    Stud_ID Name

    101 Lennon

    20

    STUDENT_COURSE

    Stud_ID Course Units

    101 MSI 250 3

    101 MSI 415 3

    125 MSI 331 3

  • 7/31/2019 Materi-Normalisasi

    21/34

    5

    Bringing a Relation to 2NF

    CompositePrimary Key

    21

    STUDENT

    Stud_ID Name Course_ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    22/34

    5

    Bringing a Relation to 2NF

    CompositePrimary Key

    Goal: Remove Partial DependenciesPartial

    Dependencies

    22

    STUDENT

    Stud_ID Name Course_ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    23/34

    5

    Bringing a Relation to 2NF Remove attributes that are dependent from the part

    but not the whole of the primary key from the original

    relation. For each partial dependency, create a newrelation, with the corresponding part of the primarykey from the original as the primary key.

    23

    STUDENT

    Stud_ID Name Course_ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

  • 7/31/2019 Materi-Normalisasi

    24/34

    5Bringing a Relation to 2NF

    CUSTOMER

    Stud_ID Name Course _ID Units

    101 Lennon MSI 250 3.00

    101 Lennon MSI 415 3.00

    125 Johnson MSI 331 3.00

    STUDENT_COURSE

    Stud_ID Course_ID

    101 MSI 250

    101 MSI 415

    24

    COURSE

    Course_ID Units

    MSI 250 3.00

    MSI 415 3.00

    MSI 331 3.00

    STUDENT

    Stud_ID Name101 Lennon

    101 Lennon

    125 Johnson

  • 7/31/2019 Materi-Normalisasi

    25/34

    5

    Bringing a Relation to 3NF

    Goal: Get rid of transitive dependencies.Transitive

    De endenc

    25

    EMPLOYEE

    Emp_ID F_Name L_Name Dept_ID Dept_Name

    111 Mary Jones 1 Acct122 Sarah Smith 2 Mktg

  • 7/31/2019 Materi-Normalisasi

    26/34

    5

    Bringing a Relation to 3NF

    Remove the attributes, which are dependent on anon-key attribute, from the original relation. For each

    transitive dependency, create a new relation with thenon-key attribute which is a determinant in thetransitive dependency as a primary key, and thedependent non-key attribute as a dependent.

    26

    EMPLOYEE

    Emp_ID F_Name L_Name Dept_ID Dept_Name

    111 Mary Jones 1 Acct

    122 Sarah Smith 2 Mktg

  • 7/31/2019 Materi-Normalisasi

    27/34

    5Bringing a Relation to 3NF

    EMPLOYEE

    Emp_ID F_Name L_Name Dept_ID

    EMPLOYEE

    Emp_ID F_Name L_Name Dept_ID Dept_Name

    111 Mary Jones 1 Acct

    122 Sarah Smith 2 Mktg

    27

    ary ones

    122 Sarah Smith 2

    DEPARTMENT

    Dept_ID Dept_Name

    1 Acct

    2 Mktg

    5

  • 7/31/2019 Materi-Normalisasi

    28/34

    5

    1NFDeptno Dname Location

    10 IT Leeds, Bradford, Kent

    20 Research Hundredfold

    30 Marketing Leeds

    28

    5

  • 7/31/2019 Materi-Normalisasi

    29/34

    5

    1NFDeptno Dname Location

    10 IT Leeds, Bradford, Kent

    20 Research Hundredfold

    30 Marketing Leeds

    29

    Deptno Dname

    10 IT

    20 Research

    30 Marketing

    Deptno Location

    10 Leeds

    10 Bradfprd10 Kent

    20 Hundredfold

    30 Leeds

    5

  • 7/31/2019 Materi-Normalisasi

    30/34

    52NF

    PNo PName PLoc EmpNo EName Salary Address HoursNo

    Given the following FDs:

    AddressSalaryNameEmpNo

    LocDnamePNo

    HoursNoEmpNoPNo

    ,,

    ,

    ,

    >

    >

    >

    30

    Assuming all attributes are atomic, is the aboverelation in the 1NF, 2NF ?

    Relation X1 Relation X3

    Relation X2

    PNo PName PLoc

    EmpNo EName Salary Address

    PNo EmpNo HoursNo

    5

  • 7/31/2019 Materi-Normalisasi

    31/34

    5

    Example: 1NF

    Order(OrderNumber, OrderDate, {PartNumber,{Supplier}})

    31

    5

  • 7/31/2019 Materi-Normalisasi

    32/34

    5

    Example: 1NF

    Order(OrderNumber, OrderDate, {PartNumber,{Supplier}})

    32

    Order(OrderNumber, OrderDate)

    Order-Part(OrderNumber, PartNumber)

    Part(PartNumber, {Supplier})

    5

  • 7/31/2019 Materi-Normalisasi

    33/34

    5

    Example: 1NF (cont.)

    Part(PartNumber, {Supplier})

    Part PartNumber

    33

    Part-Supplier( PartNumber, SupplierNum)

    Supplier( SupplierNum )

    5

  • 7/31/2019 Materi-Normalisasi

    34/34

    5

    2nd Normal Form

    No partial dependenciesNo attribute depends on only some of the

    34

    .

    Order-Part

    [OrderNumber | PartNumber | PartDescription]

    Create a new table with PartNumber key.