A doua form normal FN 2 O relaie

  • Slides: 7
Download presentation
A doua formă normală (FN 2) O relaţie care este în FN 1 dar

A doua formă normală (FN 2) O relaţie care este în FN 1 dar nu este în FN 2 poate suferi anomalii la modificare, ca în următorul exemplu: Exemplu: Fie baza de date a unui institut de cercetări care mai multe filiale şi în care salariaţii sunt plătiţi în funcţie de numărul de ore lucrate în cadrul unui proiect de cercetare. dintre entităţile care apar într-o astfel de bază de date enumerăm: Filiale={Cod. Fil, Nume. Fil, Loc. Fil} Angajati={CNP, Cod. Fil, Nume. Ang, Adresa, Salariu. Pe. Ora} Proiecte={Cod. Pr, Titlu. Pr, Cod. Fil, Data. Predarii} Angajati. Proiecte={CNP, Nume. Ang, Cod. Pr, Titlu. Pr, Nr. Ore, Data. Predarii} cu instantele de mai jos: Observaţie! FN 2 se referă numai la relaţii a căror cheie primară este formată din mai multe atribute, deoarece se bazează pe conceptul de dependenţă funcţională completă.

Definiţie: Dependenţa funcţională completă Fie a 1 şi a 2 două atribute ale entităţii

Definiţie: Dependenţa funcţională completă Fie a 1 şi a 2 două atribute ale entităţii E; spunem ca a 2 este complet dependent funcţional de a 1 dacă şi numai dacă a 2 este dependent funcţional de a 1 dar nu este dependent funcţional de nici o submulţime proprie a lui a 1. Definiţie: A doua formă normală O relaţie este în FN 2 dacă şi numai dacă: 1. Este deja în FN 1 2. Oricare dintre atributele sale care nu fac parte din cheia primară este complet dependent funcţional de cheia primară Aducerea unei relaţii la FN 2 Fie e o entitate aflată în FN 1; aducerea ei la FN 2 necesită: 1. Identificarea tuturor dependenţelor funcţionale dintre atributele entităţii 2. Descompunerea entităţii E în entităţi noi astfel: § Fiecare dependenţă funcţională completă defineşte o nouă entitate § Din fiecare dependenţă funcţională parţială se elimină acea parte a cheii primare care este răspunzătoare de incompletitudinea dependenţei şi apoi se defineşte noua relaţie 3. Stabilirea relaţiilor dintre noile entităţi (în scopul recuperării informaţiilor de legătură, pierdute eventual prin înlocuirea entităţii iniţiale cu entităţile normalizate)

A treia formă normală (FN 3) O relaţie care este în FN 2 dar

A treia formă normală (FN 3) O relaţie care este în FN 2 dar nu este în FN 3 poate suferi anomalii la modificare, ca în exemplul următor: Fie baza de date a institutului de cercetări descrisă mai devereme. Presupunem că am introdus şi entitatea Angajati. Filiale={CNP, Nume. Ang, Adresa, Oras, Cod. Fil, Nume. Fil, Loc. Fil} cu instanţele de mai jos Observaţie! FN 3 se bazează pe conceptul de dependenţe funcţionale tranzitive. Definiţie: Dependenţe funcţionale tranzitive Fie a 1, a 2 şi a 3 trei atribute ale unei entităţi E cu proprietatea că: a 1 a 2 si a 2 a 3 a 1 nu depinde functional nici de a 2 nici de a 3 Atunci: a 1 a 3 (a 3 depinde functional de a 1 via a 2)

Exemplu Cnp Nume Pren Adresa Cod. Cl Locatie Nr. Banci Nr. Table 1900530123 Savu

Exemplu Cnp Nume Pren Adresa Cod. Cl Locatie Nr. Banci Nr. Table 1900530123 Savu Ion B IXC Cam 09 15 2 1900924456 Rosu R CJ XA Cam 15 21 3 2900225789 Banu M B XA Cam 15 21 3 2900807246 Rona C AR IXC Cam 09 15 2 1901010357 Mares D DJ XIB Cam 23 18 3 Avem urmatoarele dependente functionale: CNP Cod. Cl si Cod. Cl Loc atunci avem si CNP Loc via atributul Cod. Cl deoarece atributul CNP nu depinde functional nici de Cod. Cl nici de Loc. Definiţie: A treia formă normală O relaţie este în FN 3 dacă şi numai dacă: 1. Este deja în FN 2 2. Niciunul dintre atributele sale care nu fac parte din cheia primară nu este, prin tranzitivitate, dependent funcţional de cheia primară.

Aducerea unei relaţii la FN 3 necesită: 1. Identificarea tuturor dependenţelor tranzitive dintre a

Aducerea unei relaţii la FN 3 necesită: 1. Identificarea tuturor dependenţelor tranzitive dintre a tributele entităţii E 2. Descompunerea entităţii E în entităţi noi, astfel: § Atributul a 1 împreună cu toate atributele care depind funcţional de el (inclusiv a 2) formează o nouă relaţie § Atributul a 2 împreună cu atributul a 3 şi cu alte atribute care depind funcţional de a 1 prin tranzitivitate formează o nouă relaţie 3. Definirea atributului a 2 drept cheie primară a celei de-a doua entităţi nou create 4. Stabilirea relaţiilor dintre noile entităţi

Procesul normalizării prin etapele FN 1, FN 2, FN 3 Condiţie de verificat Soluţie(normalizare)

Procesul normalizării prin etapele FN 1, FN 2, FN 3 Condiţie de verificat Soluţie(normalizare) FN 1 Toate atributele entităţii trebuie sa ia o singură valoare Fiecare atribut care ia mai multe valori pentru aceeaşi instanţă se transformă într-o nouă entitate. Se stabilesc relaţiile necesare între noile entităţi şi entitatea iniţială modificată. FN 2 Entitatea este în FN 1. Cheia sa primară constă din mai multe atribute. Toate atributele care nu fac parte din cheia primară sunt complet dependente funcţional de cheia primară. Fiecare parte a cheii primare, împreună cu atributele care depind funcţional complet de ea formează o nouă entitate. Se stabilesc relaţiile necesare între noile entităţi care au înlocuit -o pe cea iniţială. FN 3 Entitatea este în FN 2. Niciun atribut care nu face parte dintr-o cheie candidat nu este funcţional dependent de un alt atribut care nu face nici el parte dintr-o cheie candidat Se păstrează în entitatea iniţială numai cheia primară şi atributele care depind funcţional de ea direct (inclusiv atributul incriminat) Se crează câte o nouă entitate din fiecare atribut care nu face parte din cheia primară, împreună cu toate atributele (care nu fac nici ele parte din cheia primară a entităţii iniţiale) care sunt dpendente funcţional de acesta. Se stabilesc relaţiile necesare între noile entităţi şi entitatea iniţială modificată.

Sursa: Informatică – Manual pentru clasa a XII-a, Editura Corint, Mioara Gheorghe, Monica Tătărâm,

Sursa: Informatică – Manual pentru clasa a XII-a, Editura Corint, Mioara Gheorghe, Monica Tătărâm, Corina Achinca, Ioana Pestriţu, 2007