Sunteți pe pagina 1din 29

BAZE DE DATE

realizate cu

ACCESS 2010
Anul universitar 2011-2012

Cerine examen 20% proiect prezentat la laborator 20% teste n timpul orelor de lab. 10% teme de control platforma 50% examen SCRIS
Bibliografie: materiale cursuri, seminarii i Baze de date Access 2007, proiectare i realizare pas cu pas, Tama Ilie, etc., Editura Infomega 2010, Bucureti
2

Teoria general a bazelor de date


Datele reprezint o colecie de premise, care constau n
cuvinte, numere, imagini, etc. Informaia poate fi definit ntr-o form general, ca fiind totalitatea datelor pentru care se face o referire, adic date accesibile public (dar securizate), n concordan cu interesul pentru organizaie. Cunotinele gestioneaz o experien complex, ctigat din diferite perspective. Totalitatea ideilor, noiunilor, informaiilor pe care le are cineva ntr-un domeniu reprezint cunotine. nvarea reprezint capacitatea de a transmite sistematic cunotine i deprinderi dintr-un domeniu oarecare, a iniia pe cineva, a dobndi cunotine prin 3 studiu, a memora, a ctiga experien.

R O IT VI

UT EC TR

Teoria general a bazelor de date


Baza de date este: Un ansamblu de date structurate Legate funcional Stocate pe suporturi tehnice adresabile Accesate de mai muli utilizatori de o manier selectiv i ntr-un timp oportun

Baze de date Excel


Cmpuri (Atribute / Proprieti / Rubrici)

Valoare ntregistrare (Tuplu) Domeniu

Cmpuri calculate 6

Clieni 1

Facturi n

Clieni
Cod_client Nume_client Adres

Factura
Nr_factur Data_factur Data_scadenei Cod_client (CF)

Localitate

Coninut Factur
Cod_Produs Nr_Factur Cantitate

Produse
Cod_produs Denumire_produs

Pre_unitar

Modelul RELAIONAL
Un model de organizare bidimensional a datelor n tabele Implementeaz schema relaional (MRD)
Tabele Relaii ntre tabele Reguli de validare

Algebra relaional (Operatori relaionali)


Operatori de asamblare (Reuniunea, Intersecia, Produsul cartezian, Diferena) Operatori unari (Proiecia, Selecia) Operatori de extensie (Compunerea, Diviziunea)

Un limbaj standard de gestiune a BDR


9

Modelul RELAIONAL
R(X1,X2,....Xn)
unde, pentru fiecare element Xi se definete un domeniu de valori

Domeniul reprezint mulimea valorilor posibile care definesc o anumit proprietate. Atributul / Cmpul / Proprietate reprezint mulimea valorilor Cmpul existente ntr-o coloan a relaiei. Relaiile se reprezint prin tabele care sunt supuse urmtoarelor restricii:
n fiecare coloan, toate valorile sunt de acelai tip; Ordinea liniilor (tuplurilor sau nregistrrilor) nu este predefinit; Nu sunt admise nregistrri duplicate Coloanele sunt identificate prin nume distincte (atribute sau proprieti)

Tuplurile unei relaii se pot identifica de o manier unic prin intermediul valorilor unuia sau mai multor atribute care joac rol de CHEIE PRIMAR a relaiei respective 10

Definiii ale cheilor existente ntr-o tabel


Cheia unei tabele reprezint un ansamblu minim de atribute care identific o nregistrare dintr-o tabel. Cheia poate fi format dintr-un singur atribut i se numete cheie simpl sau din mai multe atribute i se numete cheie compus. ntr-o tabel pot exista mai multe atribute cu proprietatea c pot identifica o nregistrare i sunt numite chei candidate. Cheia primar va identifica n mod unic o nregistrare din tabel. Dac ntr-o tabel un atribut sau ansamblu de atribute ia valori n acelai domeniu ca i cheia primar a unei tabele, atunci acest ansamblu de atribute se numete cheie extern.

11

Modelul RELAIONAL
CHEIA EXTERN Fiind dou relaii R1 i R2, cu EXTERN: atributele A1 i A2 chei primare definite pe acelai domeniu primar D, se spune c n relaia R1, A2 este cheie extern dac, utiliznd o parte din valorile ei sau toate, pot fi regsite tuplurile relaiei R2 (altfel spus, un atribut al unei relaii este cheie extern, dac se regsete pe post de cheie primar n alt relaie) Relaii

R1(A1,B1,C1,D1,A2 A2)
Chei primare
12

R2(A2,B2,C2,D2)
Cheie extern

Modele de date: modelul RELAIONAL


Relaii

R1(A1,B1,C1,D1,A2 A2)
Factura
Nr_factur Data_factur Data_scaden Cod_client

R2(A2,B2,C2,D2)
Clieni Chei primare
Cod_client Nume_client Adres Localitate

Cheie extern

Factura(Nr.Factura,Data_f,Data_s,Cod client Cod client) Clienti(Cod client,Nume_cl,Adresa,Localitate)


13

Normalizarea Bazelor de Date: Procesul de normalizare


Normalizarea este un demers ce conduce la construirea modelului relaional al bazei de date
Se descompune o tabel complex manipulat n subtabele mai mici i mai uor de

Dictionar Date +Reguli Gest

NORMALIZARE

MRD

SCOP: Normalizarea garanteaz coerena bazei de date n timpul operaiilor de actualizare de date, evitnd redundanele REZULTAT: Un model nedecompozabil ce respect regulile de definire semantic i de integritate a datelor
14

Dependena funcional :
Dependenele sunt legturi logice, ce se stabilesc ntre
cmpurile modelului relaional.
Exist o dependen funcional ntre 2 atribute atunci cnd cunoscnd valoarea luat de ctre un atribut, se furnizeaz sistematic valoarea pentru cellalt atribut
A -> B (B depinde funcional de A, dac la orice valoare a lui A corespunde n orice moment o valoare unic a lui B) Tranzitivitate: Exemple de dependene funcionale: Tranzitivitate
Cod Produs -> Denumire produs Dac A -> B i B -> C, atunci Cod Produs -> Pre de referin A ->C Numr Comand -> Dat Comand Numr Comand -> Cod Client -> Nume Client -> Cod Fiscal

Dac un atribut sau un grup de atribute dintr-un tabel determin funcional celelalte atribute ale tabelului, rezult c atributul sau grupul de atribute constituie cheia primar a tabelului 15

Normalizarea Bazelor de Date: Diagrama dependenelor funcionale


Reprezentarea grafic a dependenelor funcionale Cod Produs
Denumire, UM, Pre de referin

NrComand Cod Produs

Dat comand, Cantitate comandat

16

Normalizarea Bazelor de Date: Dependene Inter-Tabele i Multivaloare


Dependene Inter-Tabele (1-1)
Cnd la o valoare a atributului Cheie primar dintr-o tabel, se asociaz o singur valoare a atributului Cheie primar dintr-o alt tabel, se poate spune c exist o dependen funcional ntre tabele, exprimat prin dependena funcional dintre atributele chei primare aferente celor dou tabele

CodProfesor

NumeProfesor

Dependene Multivaloare (1-n) (n-m)


n cazul n care la o valoare a atributului Cheie primar dintr-o tabel, corespund mai multe valori ale altui atribut dintr-o alt tabel, se poate spune c exist o dependen funcional multivaloare

Nr.factur

Cod Produs

CodProfesor

Cod Carte
17

Normalizarea Bazelor de Date : Formele normale 1, 2, 3


Dicionar de date i Reguli de gestiune
Potrivit regulilor de gestiune coroborate cu analiza informaional referitoare la aplicaia de informatizat se declar ntr-un tablou toate atributele disponibile (Identificatorul + Denumirea n clar)

DD+RG 1FN 2FN 3FN

1 FN
O relaie R este n 1FN atunci cnd atributele sale nu pot fi descompuse n uniti mai mici

2 FN
O relaie R este n 2FN, dac este n 1FN i toate dependenele ntre cheia primar a lui R i celelalte atribute a lui R sunt elementare (atributele nu depind de o parte din cheie)

3 FN
O relaie R este n 3FN, dac este n 2FN i dac sunt eliminate toate dependenele funcionale tranzitive (dac nu exist nici o dependen funcional ntre atributele non-cheie) 18

Normalizarea Bazelor de Date: Matricea Dependenelor Funcionale


Formalizarea procesului de normalizare este operaional prin Matricea Dependenelor Funcionale:
MDF are pe linie toate atributele dicionarului de date MDF are pe coloan toate atributele sau numai atributele care pot avea rol de cheie primar Se noteaz 1 la intersecia liniei cu coloana pentru care exist dependen funcional Se noteaz cu M dependena multipl Se noteaz 1T dependenele funcionale tranzitive
Liniile care NU AU 1 desemneaz fie atribute care nu sunt dependente funcional de un identificator simplu, fie desemneaz atribute parametru
19

Normalizarea Bazelor de Date: Exemplul I Etapele procesului de NORMALIZARE


Inventarierea atributelor (se vor selecta toate atributele referitoare la facturile primite) Numr factur Dat factur Cod furnizor Denumire furnizor Adresa, etc. Se specific regulile de gestiune i algoritmii de calcul asociai (se vor specifica diversele restricii i condiii impuse datelor) O factur este emis de un singur furnizor Codul materialului este unic O factur conine mai multe produse aprovizionate Furnizorii pot fi numai persoane juridice Algoritmii de calcul: (Val_mat_fact=Cant_facturat*Pre_unitar) 20

Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE


Se ntocmete dicionarul datelor Un atribut poate fi nscris o singur dat n dicionar Se elimin atributele sinonime (de ex. Cod furnizor = Simbol furnizor) Dicionarul datelor nu admite atribute derivate sau calculate (Valoare, TVA)

Nr.crt 1 2 3 4 5

Atribut CodFz DenFz AdrFz NrFact DataFact

n clar Cod Furnizor Denumire Furnizor Adres Furnizor Numr Factur Dat Factur 21

Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE


Se stabilesc dependenele funcionale ntre atribute prin MDF Toate atributele sau grupurile de atribute determinante, devin CHEI CANDIDATE (posibile chei ale relaiei). Cheile candidate aparinnd aceleiai relaii sunt caracterizate prin dependene funcionale reciproce. Se stabilesc CHEILE PRIMARE dintre cheile candidate
CodFz NU DenFz 1 NU 1T AdrFz 1 NU 1T
22

NrFact

DataFact

CodFz DenFz AdrFz NrFact DataFact

NU

1 NU

Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE


Sau se stabilesc dependenele funcionale ntre atribute Denumire Furnizor

Cod Furnizor

Adres Furnizor

Numr Factur

Dat Factur

23

Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE Pentru atributele izolate se vor cuta grupuri de atribute ce pot constitui determinani ai acestora. Se acestora. Se vor cuta mai nti grupuri de chei primare, apoi grupuri de atribute non-cheie, noniar n final, dac va fi cazul, se vor aduga chei surogat. Cu fiecare cheie primar i cu atributele determinate direct (fr tranzitivitate) se (fr tranzitivitate) formeaz o nou relaie. relaie. Se stabilesc CHEILE EXTERNE
24

Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE


Dac ntre dou chei primare exist o dependen multipl (reciproc), atunci, aceast dependen (reciproc) va genera o relaie. relaie. Cheia primar a acestei relaii va fi format din cele dou atribute, care, individual vor avea i rol de chei externe. externe.

FURNIZOR(CodFz, DenFz, AdrFz) FURNIZOR FACTUR(NrFact, DataFact, CodFz) FACTUR


25

Normalizarea Bazelor de Date: EXEMPLUL II: Evidena facturilor emise

NrFact,
DataFact

CLIENTI FACTURI

CodCli,
Nume, Adresa, Tel

PRODUSE

CodProd,

DenProd, CantFact, Pret


26

Normalizarea Bazelor de Date: EXEMPLUL II: Evidena facturilor emise


NrFact, DataFact, CodCli, Nume, Telefon, Adresa, CodProd, DenProd, CantFact, Pret

FN1 Descompunerea atributelor compuse ale dicionarului de date n atribute simple Precizarea identificatorului.
Dicionarul datelor (NrFact, DataFact, CodCli, Nume, Telefon, Strada, Nr, CodPostal, Localitate, Cod Postal, CodProd, DenProd, CantFact, PretRef, PretFact)
27

Normalizarea Bazelor de Date: EXEMPLUL II: Evidena facturilor emise


CLIENTI

FN2
Fiecare atribut non-cheie s depind de ntreaga cheie primar (dependene elementare).
CLIENTI (CodCli, Nume, Telefon, Strada, Nr, CodPostal, Localitate) FACTURI(NrFact, DataFact, CodCli) FACTURI

FACTURI

FACTURAT

PRODUSE

PRODUSE(CodProd, DenProd, PretRef) PRODUSE FACTURAT(NrFact, CodProd, CantFact, PretFact) FACTURAT


28

Normalizarea Bazelor de Date: EXEMPLUL II: Evidena facturilor emise


FN3

Eliminarea dependenelor tranzitive


CLIENT (CodCli, Nume, Telefon, Fax, Strada, Nr, CodPostal) FACTURA(NrFact, DataFact, CodCli) PRODUS(CodProd, DenProd, PretRef) FACTURAT(NrFact, CodProd, CantFact, PretFact) LOCALIZARE(CodPostal, Localitate) LOCALIZARE

29

S-ar putea să vă placă și