Programa analitic: 1. Concepte de baz 2. Proiectarea BD 3. Dezvoltarea BD folosind SGBD ACCESS 2000 4. Limbajul SQL 5. Baze de date avansate: Sisteme client/server BD on-line BD distribuite BD multidimensionale Evaluare:PV Laborator 50% Lucrare curs 50% Bibliografie 2 Concepte de baz ale Bazelor de date -DB Baz de date Definiie: 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 O baz de date se descrie independent de programele care utilizeaz datele Descrierea datelor formeaz Dicionarul Datelor i vizeaz: Structurile de date; Legturile dintre date Regulile care s asigure coerena datelor
3 Modele de date Modelul IERARHIC Modelul REEA Modelul RELAIONAL Modelul OBIECT Permite modelarea realitii prin intermediul obiectelor definite ca entiti cu identitate proprie i caracterizate prin stare i comportament Modelul OBIECT-RELAIONAL Un model de date este un ansamblu de concepte, o convenie de reprezentare care permite descrierea datelor de administrat 4 Modele de date: modelul IERARHIC Datele sunt organizate sub form de structur arborescent; Datele sunt grupate n tipuri nregistrri ce descriu o ierarhie simpl (un tat poate avea mai muli fii, n timp ce un fiu poate avea un singur tat) Singurele asocieri posibile sunt 1-1 i 1-n O nregistrare fiu nu poate exista independent de o nregistrare ierarhic superioar tat de care este legat i nu poate fi manipulat independent de aceasta
Servicii_funcionale Angajai Cod_serv Denumire_serviciu Marca Nume_salariat Funcie Salariu
Servicii_funcionale 1 Conducere 8 Contabilitate 12 Ionescu Director 15000000 82 Popa Contabil 2000000 84 Petre V Ec. 3000000 83 Gogu G Ec. 4000000 DEZAVANTAJE Dificultate n formularea interogrilor ce manipuleaz simultan mai multe ramuri Redundana informaiei ce antreneaz incoeren 5 Modele de date: modelul REEA Datele sunt organizate sub form de reea; Modelul reea completeaz modelul ierarhic (un nod printe poate avea mai muli fii, n timp ce un fiu poate avea mai multe noduri printe) Asocierile posibile sunt 1-1; 1-n; m-n
Servicii_funcionale Angajai Cod_serv Denumire_serviciu Marca Nume_salariat Salariu Funciii Cod_fun Denumire_funcie 6 Modele de date: 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 asambalare (Reuniunea, Produsul caretezian) Operatori unari (Proiecia, Selecia) Operatori de extensie (Compunerea, Diviziunea) Un limbaj standard de gestiune a BDR 7 Modele de date: modelul RELAIONAL Modelul relaional introdus de Codd n 1970 se fundamenteaz pe noiunea matematic de relaie R(X 1 ,X 2 ,....X n ) unde, pentru fiecare element Xi se definete un domeniu de valori Domeniul reprezint mulimea valorilor posibile care definesc o anumit proprietate aferent unui obiect Atributul reprezint mulimea valorilor existente n coloana pe care o desemneaz n cadrul relaiei. ntr-o relaie pot exista mai multe atribute care iau valori n aceleai domenii. Relaiile se reprezint prin tabele care sunt supuse urmtoarele 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 8 Modele de date: modelul RELAIONAL Se numete DOMENIU PRIMAR acel domeniu pe care este definit un singur atribut drept cheie primar CHEIA EXTERN: Fiind dou relaii R1 i R2, cu 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) R1(A1,B1,C1,D1,A2) R2(A2,B2,C2,D2) Relaii Chei primare Cheie extern 9 Modele de date: modelul RELAIONAL RESTRICIILE DE INTEGRITATE depind de semantica valorilor domeniilor Integritatea entitii prin care valorile cheii primare trebuie s fie diferite de zero Integritatea referirii potrivit creia valorile unei chei externe trebuie s se refere la tuplurile unei alte relaii ALTE RESTRICII care se aplic asupra domeniilor (validri prin care se reflect alte corelaii de ordin valoric) SCHEMA unei relaii este format din: Numele relaiei Atributele relaiei Restriciile de integritate 10 Dup utilizarea n ntreprindere: Baze de date operaionale (BD de domeniu) = nucleul sistemului informaional al ntreprinderii Baze de date de informare a executivului (EIS) Baze de date multidimensionale (OLAP) Baze de date externe (On-Line)
Dup modul de accesare: BD colective BD individuale
Dup modul de stocare i localizare a datelor: BD locale (Stocate pe server i distribuite Clienilor) BD distribuite (stocate n dif. Puncte ale unei reele distribuite)
Tipologia Bazelor de Date 11 Rol : Interfa ntre BD i utilizatori Permite: Crearea Consultarea Actualizarea BD SGBD = un instrument de asamblare, codificare, aranjare, protecie i regsire a datelor n BAZELE DE DATE
Funcii principale: descrierea datelor prin schemele: extern, conceptual, intern i legturile corespondente, prin intermediul unui limbaj specializat (LDD) vizeaz deopotriv structurile de date, legturile ntre acestea i regulile care s asigure coerena datelor (numite i reguli de integritate) manipularea datelor (LMD) Interogarea bazelor de date Actualizarea datelor protejarea bazelor de date utilizatori, drepturi de acces, reluare n caz de pan, copii de siguran Administrator BD BD DD SGBD Utilizator final 1 Utilizator final n Programe de aplicaii SGBD 12 SGBD: niveluri de descriere a datelor
Nivelul intern de descriere a BD se face de ctre Administratorul BD care: Definete schema intern de organizare a datelor Definete regulile de trecere de la schema conceptual la cea intern Nivelul conceptual de descriere a BD se face de ctre Administratorul ntreprinderii Nivelul extern de descriere a BD se face de ctre Administratorul aplicaiei, care: Definete schema extern Definete regulile de coresponden cu schema conceptual
13 Niveluri de reprezentare a unei Baze de date
Schema extern 1
Schema extern 2
Schema extern n
Grup utilizatori 1
Grup utilizatori 2
Grup utilizatori n
Schema conceptual Proces modelare Schem fizic BD Nivel extern Nivel conceptual Nivel fizic Domeniul de studiu
14 SGBD SGBDR Pentru baze de date n volume mici/ medii ACCESS, Visual Fox, Dbase, Approach Date n volume medii/mari Oracle, Informix, etc.
15
Problem
Proiectare BD
Schema relaional MRD
LDD
LMD
( ) Descriere
Manipularea
datelor
LDD, limbaj de descriere date, LMD, limbaj de manipulare date SGBD BD Dezvoltarea unei aplicaii cu baze de date Proiectarea BDR normalizare Modelul E-A conversia MCD - MRD 16 Normalizarea se bazeaz pe urmtoarele concepte: Proces de normalizare Dependena funcional Diagrama dependenelor funcionale Dependene Inter-Tabele i Multivaloare Forme normale Matricea dependenelor funcionale Etapele proiectrii MR prin normalizare Exemplul II (facturi ctre clieni) Exemplul III (editur)
Normalizarea Bazelor de Date 17 DD +RG NORMALIZARE MRD 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 n subtabele mai mici i mai uor de manipulat
SCOP: Normalizarea garanteaz coerena bazei de date n timpul operaiilor de actualizare (CMS) de date, evitnd redundanele REZULTAT: Un model ne-decompozabil ce respect regulile de definire semantic i de integritate a datelor 18 Exist o dependen funcional ntre 2 atribute atunci cnd cunoscnd valoarea luat de ctre un atribut, se furnizeaz sistematic valoarea pentru cellalt atribut X -> Y (Y depinde funcional de X, dac la orice valoare a lui X corespunde n orice moment o valoare unic a lui Y) Exemple de dependene funcionale: Cod Produs -> Denumire produs Cod Produs -> Pre de referin Numr Comand -> Dat Comand Numr Comand -> Cod Client -> Nume Client -> Cod Fiscal Normalizarea Bazelor de Date: Dependena funcional 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 Tranzitivitate: Dac X -> Y i Y -> Z, atunci X ->Z 19 Reprezentarea grafic a dependenelor funcionale Normalizarea Bazelor de Date: Diagrama dependenelor funcionale Cod Produs Denumire, UM, Pre de referin NrComand Cod Produs Dat comand, Cantitate comandat 20 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 Normalizarea Bazelor de Date: Dependene Inter-Tabele i Multivaloare Nr.factur Cod Client 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 CodProfersor Cod Carte 21 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) Normalizarea Bazelor de Date : Formele normale 1, 2, 3 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) 22 Normalizarea Bazelor de Date : Formele normale BC, 4, 5 3FN
Boyce-Codd
4FN
5FN
Boyce-Codd O relaie R este n forma BC dac este n 3FN i dac fiecare determinant n diagrama de dependene este un candidat pentru a deveni cheia relaiei. Dac o relaie are un identificator concatenat, unul dintre elementele care-l compun nu trebuie s depind de alt atribut 4 FN O relaie R este n 4FN, dac este n forma BC i dac nu exist dou dependene funcionale multivaloare n aceeai relaie 5 FN O relaie R este n 5FN, dac este n 4FN i trateaz cazurile n care exist mai multe dependene funcionale multivaloare care sunt interlegate ntre ele 23 Exemplu Forma Normal Boyce-Codd CURS(Cod disciplin, Numr grup, Cod profesor PROFESOR(Cod profesor, Cod disciplin) CURS(Cod profesor, Numr grup) GRUP(Numr grup) 24 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 1 T dependenele funcionale tranzitive Liniile care NU AU 1 desemneaz fie atribute care nu sunt dependente funcional de un identificator simplu, fie desemneaz atribute parametru
Normalizarea Bazelor de Date: Matricea Dependenelor Funcionale 25 Inventarierea atributelor (se vor selecta toate atributele referitoare la facturile primite) Numr factur Dat factur Cod furnizor Denumire furnizor Adresa, etc. Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE 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) 26 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) Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE Nr.crt Atribut n clar 1 CodFz Cod Furnizor 2 DenFz Denumire Furnizor 3 AdrFz Adres Furnizor 4 NrFact Numr Factur 5 DataFact Dat Factur 27 Se stabilesc dependenele funcionale ntre atribute prin MDF Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE CodFz DenFz AdrFz NrFact DataFact CodFz NU 1 1 DenFz NU AdrFz NU NrFact 1 1 T 1 T NU 1 DataFact NU 28 Sau se stabilesc dependenele funcionale ntre atribute prin DDF Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE Numr Factur Dat Factur Cod Furnizor Denumire Furnizor Adres Furnizor 29 Pentru atributele izolate se vor cuta grupuri de atribute ce pot constitui determinani ai acestora 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 Cu fiecare cheie primar i cu atributele determinate direct (fr tranzitivitate) se formeaz o nou relaie. Se stabilesc CHEILE EXTERNE Normalizarea Bazelor de Date: Etapele procesului de NORMALIZARE FURNIZOR(CodFz, DenFz, AdrFz) FACTUR(NrFact, DataFact, CodFz) 30 Normalizarea Bazelor de Date: EXEMPLUL II: Evidena facturilor emise FN1 Descompunerea atributelor compuse ale dicionarului de date n atribute simple i precizarea identificatorului. Dicionar (NrFact, CodCli, Nume, Telefon, Fax,: Strada, Nr, CodPostal, Localitate , DenProd, PretRef, DataFact, CodProd, CantFact, PretFact) FN2 Fiecare atribut non-cheie s depind de ntreaga cheie primar. CLIENT (CodCli, Nume, Telefon, Fax, Strada, Nr, CodPostal, Localitate) FACTURA(NrFact, DataFact, CodCli) PRODUS(CodProd, DenProd, PretRef) FACTURAT(NrFact, CodProd, CantFact, PretFact) 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) 31 EXEMPLUL III: Enun + RG O editur dorete informatizarea activitii legate de evidena stocurilor de carte produse, a autorilor i a facturilor ctre clieni. Reguli de gestiune: a. O carte primete un alt Cod ISBN la fiecare retiprire; b. Clienii editurii sunt numai persoane juridice; c. Preul de vnzare se stabilete n momentul producerii unei cri, acesta fiind un pre orientativ, rmnnd neschimbat pn la epuizare, preul efectiv de vnzare fiind negociat cu fiecare client; d. Numrul unei facturi i codul ISBN luate mpreun sunt unice la nivel naional; e. Numele unei persoane juridice este considerat unic la nivel naional;
32 EXEMPLUL III D.A. 1
Cod ISBN
2
Denumire carte
3
Data apariiei
4
Stocul tiprit
5
Preul de baz
7
Numr factur
8
Data factur
9
Cantitatea facturat
10
Denumire Carte facturat 11
Pret Carte factur 12
Valoare Carte factur 13
Total factur 14
Cod Fiscal Client 15
Denumire Client 16
Adresa client 17
Telefon 18
CNP autor 19
Nume Prenume 20
Data naterii 21
Adresa autor
Din studiul activitii editurii au rezultat urmtoarele atribute: Se elimin atributele sinonime i calculate CRI Cod ISBN ......... AUTORI CNP autor ......... CLIENI CF client ......... FACTURI Nr Factur ......... ? ? 33 C o d
I S B N D e n u m i r e
c a r t e D a t a
a p a r i t i e i S t o c u l
t i p a r i t P r e t
d e
b a z a N u m a r
f a c t u r a D a t a
f a c t u r a C a n t i t a t e
f a c t u r a t a P r e t
c a r t e
f a c t u r a C o d
f i s c a l
c l i e n t D e n u m i r e
c l i e n t A d r e s a
c l i e n t T e l e f o n C N P
a u t o r N u m e
p r e n u m e D a t a
n a s t e r i i A d r e s a
a u t o r Cod ISBN 1 1 1 1 Denumire carte Data aparitiei Stocul tiparit Pret de baza Numar factura 1 1 1 T 1 T 1 T Data factura Cantitate facturata Pret carte factura Cod fiscal client 1 1 1 Denumire client 1 1 1 Adresa client Telefon CNP autor 1 1 1 Nume prenume Data nasterii Adresa autor Cod ISBN + Numar factura 1 T 1 T 1 T 1 T 1 T 1 1 1 T 1 T 1 T 1 T Matricea dependentelor functionale 34 CRI
Nume camp
Tip date
Obligatoriu
Unic
Integritate Referentiala
Reguli de validare Cod ISBN
Text, 13,M
Da
Da
Denumire carte
Text, 50
Da
Data aparitiei
Date/Time
Da
<=Data curenta
Stocul tiparit
Currency
Da
>0
Pret baza
Currency
Da
>0
AUTORI
Nume camp
Tip date
Obligatoriu
Unic
Integritate Referentiala
Reguli de validare
CNP
Number,LI
Da
Da
Nume prenume
Text, 50
Da
Adresa
Text, 100
Da
Data nasterii
Date/Time
Da
<=Data curenta
AUTORI-CRI
Nume camp
Tip date
Obligatoriu
Unic
Integritate Referentiala
Reguli de validare
CNP
Number,LI Da
Da
Cod ISBN
Text,13,M
Da
Da
CONINUT FACTUR ........ Cod ISBN ........ 35 FACTURI
Nume camp
Tip date
Obligatoriu
Unic
Integritate Referentiala
Reguli de validare
Serie factura
Text,5,M
Da
Da
Numar factura
Number, LI Da
Cod Fiscal
Number , LI
Da
Da
CONINUT FACTUR Nume camp
Tip date
Obligatoriu
Unic
Integritate Referentiala
Reguli de validare
Serie factura
Text,5,M
Da
Da
Da
Numar factura
Number, LI Da
Da
Cod ISBN
Text, 13,M
Da
Da
Cantitate fact
Number, Int Da
>0
Pret factura
Currency
Da
>0
CLIENI
Nume camp
Tip date
Obligatoriu
Unic
Integritate Referentiala
Reguli de validare
Cod fiscal
Number, LI Da
Da
Denumire client
Text,50
Da
Da
Adresa
Text,100
Da
Telefon
Text,20
36 37 Algebra relaional Algebra relaional poate fi definit ca un set de operatori, care prelucreaz relaii n scopul obinerii altor relaii.
Operatorii relaionali se pot grupa n: operatori de baz, care pot genera toat clasa operatorilor relaionali operatori auxiliari
Operatorii relaionali de baz se mpart n : operatori de asamblare (reuniunea, intersecia, diferena, produsul cartezian); operatori unari (proiecia, selecia); operatori de extensie 38 Algebra relaional: Operatori de Asamblare Operatorii de asamblare sunt operatori binari, care primesc la intrare dou relaii i genereaz la ieire o singur relaie.
Operatorii de asamblare sunt: Reuniunea; Intersecia; Diferena; Produsul cartezian. Operatori Binari Relaie3 Relaie1 Relaie2 39 Algebra relaional: Operatori de Asamblare:R Reuniunea a dou relaii R i S, cu aceeai structur, unde R este format din n tupluri i S este format din m tupluri, are ca rezultat o a treia relaie T, avnd aceeai structur cu a relaiilor surs i coninnd m+n tupluri. Relaia R A
B
C
a1
b1
c1
a2
b2
c2
Relaia S A
B
C
a3
b3
c3
a4
b4
c4
a5
b5
c5
Relaia T (R reunit cu S) A
B
C
a1
b1
c1
a2
b2
c2
a3
b3
c3
a4
b4
c4
a5
b5
c5
40 Algebra relaional: Operatori de Asamblare:I Intersecia a dou relaii R i S cu aceeai structur este o relaie T, (cu aceeai structur), coninnd tuplurile identice aparinnd att lui R ct i lui S. Relaia R
A
B
C
a1
b1
c1
a2
b2
c2
a4
b4
c4
Relaia S
A
B
C
a3
b3
c3
a4
b4
c4
a5
b5
c5
Relaia T (R intersectat cu S) A
B
C
a4
b4
c4
41 Algebra relaional: Operatori de Asamblare:D Diferena a dou relaii R i S avnd aceeasi structur (R-S), este o relaie T, cuprinznd mulimea tuplurilor aparinnd lui R dar neaparinnd lui S.
Relaia R A
B
C
a1
b1
c1
a2
b2
c2
Relaia S A
B
C
a3
b3
c3
a4
b4
c4
a5
b5
c5
Relaia T R-S A
B
C
a1
b1
c1
a2
b2
c2
42 Algebra relaional: Operatori de Asamblare:PC Produsul cartezian a dou relaii R i S (RxS) este o relaie T stocnd mulimea perechilor obinute prin concatenarea nregistrrilor aparinnd lui R cu cele aparinnd lui S. Relaia R
A
B
a1
b1
a2
b2
Relaia S
C
D
E
c1
d1
e1
c2
d2
e2
c3
d3
e3
Relaia T RxS
A
B
C
D
E
a1
b1
c1
d1
e1
a1
b1
c2
d2
e2
a1
b1
c3
d3
e3
a2
b2
c1
d1
e1
a2
b2
c2
d2
e2
a2
b2
c3
d3
e3
43 Algebra relaional: Operatori Unari Operatorii unari se aplic asupra unei relaii i genereaz o alt relaie. Operatorii unari sunt: Proiecia; Selecia; Relaie1 Operatori Unari Relaie2 44 Algebra relaional: Operatori Unari:Pr Proiecia unei relaii R dup anumite atribute, este relaia R1 cu structura R1 (A i1 , A i2 , , A ip ), ale crei tupluri se obin prin eliminarea valorilor atributelor din R care nu apar n R1 i prin suprimarea sau nesuprimarea tuplurilor multiple. Altfel spus, prin intermediul proieciei, dintr-un tabel cu un anumit numr de coloane se obine unul cu un numr mai mic de coloane Relaia R
A
B
C
D
a1
b1
c1
d1
a2
b2
c2
d2
a3
b3
c3
d3
R1 (R;A,B) Relaia R1 A
B
a1
b1
a2
b2
a3
b2
45 Algebra relaional: Operatori Unari:Pr Altfel spus, prin operatorul de selecie, dintr-un tabel cu un anumit numr de coloane se obine unul cu aceleai coloane, dar cu un numr mai mic de rnduri. Selecia relaiei R fa de criteriul Q este relaia R1 cu aceeai structur ca i R, ale crei tupluri satisfac criteriul specificat.
Relaia R
A
B
a1
b1
a2
b2
a3
b3
R1SELECTIE(R;A=a2 OR A=a3) Relaia R1
A
B
a2
b2
a3
b3
46 Algebra relaional: Operatori de Extensie Operatorii de extensie joac un rol foarte important n interogarea bazelor de date relaionale. Operatorii de extensie sunt: Compunerea; Diviziunea. 47 Algebra relaional: Operatori de Extensie: Join Compunerea natural este o echicompunere pe R 1 i R 2 dup toate atributele avnd acelai nume n R 1 i R 2 , urmat de o proiecie care permite conservarea unuia dintre aceste atribute, egale ca nume Relaia R1
A
B
C
a1
b1
c1
Relaia R2
B
D
b1
d1
b1
d2
Relaia TJOIN(R1,R2;B i = B j )
A
B
C
D
a1
b1
c1
d1
a1
b1
c1
d2
48 Algebra relaional: Operatori de Extensie: Div Diviziunea relaiei R 1 (A 1 , A 2 A n ) prin relaia R 2 (A p+1 , , A m ) este relaia E (A 1 , A 2 , , A p ) format din toate tuplurile care, concatenate cu fiecare tuplu din R 2, d totdeauna un tuplu din R 1 (E = R 1 R 2 ). Relaia RS
A
B
C
D
E
a1
b1
c1
d1
e1
a2
b2
c2
d2
e2
a3
b3
c3
d3
e3
Relaia S
C
D
E
c1
d1
e1
c2
d2
e2
c3
d3
e3
Relaia R
A
B
a1
b1
a2
b2
a3
b3
49 SGBD ACCESS : Caracteristici generale Utilizeaz modelul relaional n gestiunea bazelor de date Aplicaia ACCESS conine un ansamblu de colecii de obiecte tip Tabel(Table) Interogare(Query) Formular(Form) Raport(Report) Pagin Web(Page) Macro(Macro) Modul(Module) Dispune de o interfa prietenoas pentru construirea obiectelor tip i de numeroi asistei(Wizard-uri) Permite schimbul de date cu alte aplicaii Permite lucru n reele de calculatoare Permite programarea : Declarativ(QBE, SQL, aciuni n obiecte macro) Procedural(VBA)