Sunteți pe pagina 1din 15

Baze de Date

CURSUL
7

Curs 7 Modelul relaional


definitii, concepte, structurarea datelor
(relaia)
CUPRINS
INTRODUCERE 2
Obiective 2
Organizarea sarcinilor de lucru 2

SPECIFICAREA FORMAL A DATELOR LA NIVEL 3


LOGIC

TEST DE AUTOEVALUARE 11

REZUMAT 12
Termeni eseniali 13
Bibliografie 14
TEST DE EVALUARE 15

Pagina 1
C7.BD
Baze de Date

INTRODUCERE

Obiective

Prezentarea formalismului matematic utilizat pentru specificarea formal a


modelului relaional, ca model logic de date
Introducerea elementelor fundamentale legate de toria mulimilor pe care se
bazeaz formalismul matematic ce definete modelul relaional
Definirea predicatelor externe, ca instrumente de specificare semantic a
bazeolr de date

Organizarea sarcinilor de lucru


Parcurgei cursul
Fixai principalele idei ale cursului, prezentate n rezumat.
Completai testul de autoevaluare.
Timpul de lucru pentru parcurgerea testului de autoevaluare este de 15 minute.

Pagina 2
C7.BD
Baze de Date

SPECIFICAREA FORMAL A DATELOR LA NIVEL


LOGIC
Seciunea curent conine o specificare formal a modelului relaional, bazat
pe teoria mulimilor i pe logic matematic. Cei care au dezvoltat primii acest
formalism sunt Bert de Brock i Frans Remmen (1) (2), munc continuat de Lex de
Haan i Toon Koppelaars (3).
Am preferat acest formalism pentru prezentarea modelului relaional, din
urmtoarele motive:

Fiindc utilizeaz exclusiv elemente de logic matematic i de teoria


mulimilor pentru definirea modelului de date, i.e., a structurilor de date,
a operatorilor, respectiv a tuturor categoriilor de constrngeri de
integritate ce pot fi specificate pentru o baz de date relaional. Definiia
pur matematic a modelului relaional este, n sine, necesar i suficient
pentru a demonstra c este un model de date conceptual (abstract) i
independent de tehnologia de implementare deci asigur, prin
definiie, independena fizic a datelor.
Fiindc propune o modalitate de specificare formal a constrngerilor de
integritate care poate servi cu succes unei abordri declarative n
dezvoltarea sistemelor informaionale.
Fiindc, aa cum se va vedea n seciunea urmtoare, ofer un aparat
formal, adecvat definirii matematice a unui model de date destinat
specificrii declarative a vederilor utilizator.
nainte de a intra n descrierea efectiv a formalismului matematic, se impune o
scurt definire a terminologiei folosite. O parte din termenii ce vor fi definii, e.g.,
propoziia, predicatul, cuantificatorii logici, mulimea, elementul, submulimea,
cardinalitatea mulimilor, perechea ordonat, produsul cartezian, funcia, etc. ,
reprezint concepte de baz n logica matematic, respectiv n teoria mulimilor. O a
doua categorie de concepte, e.g., caracterizarea, predicatul extern, produsul
generalizat, tabelul, operatorii pe tabele, constituie fundamentul matematic al
formalismului definit n (3). Pentru consistena expunerii, am folosit cu predilecie
simbolurile i exprimarea formal definite n aceast referin.

Mulimi i elemente
Mulimea i elementele mulimii sunt considerate noiuni primare, ce nu pot fi
de aceea definite formal. Intuitiv, putem privi mulimea ca pe o colecie de elemente
distincte (concrete sau abstracte), caracterizat integral de aceste elemente (i de nimic
altceva).

Pagina 3
C7.BD
Baze de Date

Definiia lui Cantor (4) (5): O mulime este rezultatul cuprinderii ntr-un
singur tot a unor obiecte determinate ale perceperii sau gndirii noastre; aceste
obiecte se numesc elemente ale mulimii.
Specificarea mulimilor
Metoda enumerativ de specificare a mulimilor este cea mai simpl i
presupune enumerarea tuturor elementelor mulimii ntre acolade, separate prin
virgul.
Pentru mulimi cu un numr mare de elemente, enumerarea acestora devine
practic imposibil. Metoda predicativ de specificare a mulimilor permite definirea
unei mulimi pornind de la o alt mulime dat i specificnd un predicat cu un
parametru care poate lua valori din respectiva mulime. Noua mulime va conine toate
elementele mulimii date pentru care predicatul se transform n propoziii adevrate: {
xM | P(x) }.
Metoda substitutiv permite specificarea unei expresii cu o variabil i a unei
mulimi date de unde variabila i ia valori: { 2*x-7 | xN }.
Metoda hibrid reprezint o combinaie ntre metoda predicativ i cea
substitutiv, permind att specificarea unei expresii n parte stng a definiiei, ct i
specificarea n partea dreapt a unui predicat, respectiv a unei mulimi date: { 2*x-7 |
xN P(x) }.
Cardinalitatea mulimilor ()
Cardinalitatea unei mulimi (finite) M este, prin definiie, numrul de elemente
ale mulimii M, i se noteaz M:
{a,b,c,d} = 4;
= 0;
{} = 1.

Operatorul de extragere ()
Operatorul de extragere () se aplic unei mulimi cu un singur element, sau cu
cardinalitate unu (engl. singleton set), i returneaz elementul mulimii:
{e} = e.
Mulimea prilor unei mulimi ()
Mulimea prilor unei mulimi M, notat (M), este mulimea ce conine toate
submulimile lui M (inclusiv mulimea vid i mulimea M).
Perechea ordonat (cuplul)
Perechea ordonat, sau cuplul, permite introducerea conceptului de ordine,
care alturi de mulime i element reprezint o noiune primar (4). Astfel, definiia:
(1 , 2 ) := {{ 1 },{ 1 , 2 }}
trebuie neleas n sensul c membrul stng (de pe prima poziie) al mulimii ordonate
este elementul mulimii formate dintr-un singur element, membrul drept (de pe poziia
a doua) fiind elementul care nu se gsete n acea mulime.
Pentru a extrage elementele unei perechi ordonate, se folosesc operatorii i
:
1 (x,y) = x ;
2 (x,y) = y.

Pagina 4
C7.BD
Baze de Date

Noiunea de cuplu poate fi generalizat pentru n mulimi M1 , M2 , M3 , , M .


O astfel de mulime ordonat se va nota (1 , 2, 3 , , ) i se va numi n-tuplu (sau
simplu: tuplu).
n scopul de a face mai lizibil formularea, evitnd confuzia cu metoda
enumerativ de specificare a mulimilor, n cele de urmeaz se va folosi pentru
perechile ordonate notaia (a;b), n loc de (a,b).
Relaii binare
R este o relaie binar din mulimea A n mulimea B R (AxB).
Funcii
F este o funcie din mulimea A n mulimea B
F (AxB) ( p1, p2 F: p1p2 1 (p1)1 (p2) ) { 1 (p) | pF } = A.
Alte notaii ce for fi folosite n continuare:
dom(F) = A domeniul funciei F;
cod(F) B codomeniul funciei F.
Reuniunea, intersecia i diferena funciilor
Fiindc funciile sunt mulimi, orice operator pe mulimi (ca reuniunea,
intersecia sau diferena) poate fi aplicat i funciilor. Este important de remarcat, ns,
c nu ntotdeauna rezultatul aplicrii unui astfel de operator pe dou funcii va avea ca
rezultat o alt funcie. Cu alte cuvinte, dei cei trei operatori pe mulimi specificai au
proprietatea de nchidere pe mulimi (adic rezultatul are ntotdeauna aceeai natur cu
operanzii), pentru funcii acest lucru rmne valabil doar n anumite condiii.
Astfel, pentru a putea aplica operatorul de reuniune pe dou funcii, acestea
trebuie s satisfac condiia de compatibilitate (joinability), definit mai jos:
Funcia F este compatibil cu funcia G ( p(dom(F)dom(G)) :
F(p)=G(p) ).
n ce privete intersecia i diferena, pentru acestea proprietatea de nchidere se
pstreaz fr restricii suplimentare.
Operatorul de limitare a unei funcii ()
Fie F o funcie i A o mulime. Limiterea funciei F pe mulimea A, notat FA,
se definete dup cum urmeaz:
FA := { p | pF 1 (p)A}.
Compunerea funciilor ()
Definiie: Fie mulimile A, B i C. Fie funcia f:AB i funcia g:cod(f)C.
Compunerea funciilor f i g, se definete astfel:
gf := { (x;g(f(x))) | xdom(f) f(x)dom(g) }.
n mod evident, compunerea a dou funcii f i g, gf, este tot o funcie, al crei
domeniu este dom(f) i al crei codomeniu este cod(g).
Funcii ce returneaz o mulime (engl. set functions)
Definiie: F este o funcie ce returneaz o mulime F este o funcie i (
edom(F): F(e) este o mulime).
Exemplu:
F1 := { (id_persoan;[1999])
, (nume_persoan;varchar(40))
, (data_naterii;date)
, (funcie;{muncitor, maistru, contabil, director})
Pagina 5
C7.BD
Baze de Date

, (salariu;[199999])
}.

Caracterizarea
O funcie ce returneaz o mulime se numete caracterizare dac ea este
folosit pentru a exprima fapte din lumea real, specificnd atributele relevante alturi
de de mulimea de valori admisibile pentru fiecare atribut.
Funcia F1 din exemplul de mai sus poate fi considerat o caracterizare, ce
reprezint atributele angajailor unei organizaii.
Predicatul extern
Caracterizarea mai poate fi privit ca o metod de specificare formal a unui
predicat ce descrie un fragment din realitate. Parametrii predicatului vor fi reprezentai
de atributele caracterizrii, iar mulimea din care acetia iau valori va corespunde
mulimilor de valori definite pentru atributele caracterizrii. De exemplu, funcia F1
definit anterior poate fi o caracterizare pentru urmtorul predicat:
Angajatul cu numrul identificare id_persoan are numele nume_persoan,
este nascut n data data_naterii, are n cadrul organizaiei noastre funcia funcie i
salariul de baz n valoare de salariu lei.
Astfel, n termenii arhitecturii pe patru niveluri, caracterizarea corespunde
nivelului logic (n mod necesar formal), iar predicatul corespunde nivelului conceptual
(semantic, posibil informal). Datorit faptului c reprezint datele ntr-o form
apropiat de percepia utilizatorilor, un astfel de predicat se numete predicat extern.
Observaie: Motivul pentru care odat cu proiectarea nivelului logic al unui
sistem informaional este important s se specifice, de asemenea, o reprezentare
conceptual a sistemului, este c o categorie important de aspecte semantice, ce pot
fi exprimate explicit ntr-o manier informal la nivel conceptual, devin implicite n
specificarea formal aferent nivelului logic. Din acest motiv, la utilizarea sistemului,
utilizatorul trebuie s cunoasc aspectele semantice ce nu pot fi reprezentate formal la
nivel logic, pentru a putea interpreta datele i a le transforma n informaii corecte. n
exemplul anterior, referitor la angajaii unui organizaii, din definiia (logic) a
caracterizrii F1 nu putem ti moneda n care este exprimat salariul angajailor. Acest
aspect, absolut necesar interpretrii semantice a datelor referitoare la angajai, se
regsete doar n definiia (conceptual) informal a predicatului extern ataat
caracterizrii.
Produsul generalizat
Produsul generalizat este un operator care ia o funcie ce returneaz o mulime
ca i operand i produce o mulime de funcii. Dac F este o funcie ce returneaz o
mulime, produsul generalizat al lui F se definete astfel:
(F) = { f | f este o funcie dom(f) = dom(F) (cdom(f): f(c) F(c)) }
Exemplu:
Fie funcia F2 := { (x;{a,b}), (y;{c,d,e,f}) }
(F2) = { {(x;a), (y;c)}, {(x;b), (y;c)},
{(x;a), (y;d)}, {(x;b), (y;d)},
{(x;a), (y;e)}, {(x;b), (y;e)},
{(x;a), (y;f)}, {(x;b), (y;f)} }

Pagina 6
C7.BD
Baze de Date

Funciile ce rezult n urma aplicrii produsului generalizat unei caracterizri se


vor numi tupluri. Perechile ordonate ce constituie elementele unui tuplu se vor numi
perechi atribut-valoare ale tuplului. Modelul relaional de date consider un tuplu ca
fiind expresia formal a unei propoziii din lumea real. Propoziia reprezentat de un
anumit tuplu este format prin instanierea predicatului extern asociat caracterizrii,
folosind perechile atribut-valoare ale tuplului.
De asemenea, o caracteristic important a modelului relaional este Ipoteza
Lumii nchise (Closed World Assumption). Conform acesteia, dac un tuplu apare n
baza de date, atunci propoziia reprezentat de acel tuplu este considerat Adevrat.
Dac ns un tuplu ar putea aprea n baza de date, dar nu apare la un anumit moment,
interpretm c starea respectiv a bazei de date reprezint o realitate n care propoziia
corespunztoare tuplului respectiv este Fals.
Abordarea alternativ este reprezentat de Ipoteza Lumii Deschise (Open
World Assumption), a crei definiie conincide n prima sa parte cu cea a lumii nchise:
dac un tuplu apare n baza de date, atunci propoziia reprezentat de acel tuplu este
considerat Adevrat.
Diferena de interpretare survine n a doua parte a definiiei, ce vizeaz absena
unui tuplu din baza de date: dac un tuplu ar putea aprea n baza de date, dar nu apare
la un anumit moment, n ipoteza lumii deschise, propoziia reprezentat de acel tuplu
poate fi ori Adevrat ori Fals (cu alte cuvinte, nu putem afirma nimic despre
valoarea de adevr a respectivei propoziii).
Este important de subliniat aici diferena ntre a nu ti dac o propoziie este
adevrat sau fals i introducerea unei a treia valori de adevr (de exemplu
NECUNOSCUT, sau NULL), ceea ce presupune schimbarea ntregului suport
matematic al logicii cu dou valori (i.e. two-valued logic 2VL) ntr-unul
corespunztor unei logici cu trei valori (three-valued logic 3VL). n lucrarea (6),
C.J. Date aduce argumente de ordin practic i teoretic conform crora ipoteza lumii
nchise este de preferat n domeniul bazelor de date.
Specificarea formal a constrngerilor de integritate
S considerm din nou caracterizarea F1, cu definiia:
F1 := { (id_persoan;[1999])
, (nume_persoan;varchar(40))
, (data_naterii;date)
, (funcie;{muncitor, maistru, contabil, director})
, (salariu;[199999])
}.
Mulimea tuturor instanierilor posibile ale predicatului extern asociat
caracterizrii va fi reprezentat la nivel logic de mulimea de tupluri dat de produsul
generalizat al caracterizrii, (F1). n general, ns, nu suntem interesai de mulimea
tuturor tuplurilor posibile, ci de mulimea tuplurilor admisibile, care satisfac anumite
cerine (semantice) specifice realitii modelate. Privite din perspectiva afacerii,
aceste cerine sunt numite reguli de afaceri; din perspectiva sistemului informaional,
ele se vor numi constrngeri de integritate. De exemplu, din considerente legate de
gestionarea afacerii, putem formula la nivel conceptual urmtoarele constrngeri de
integritate:

Pagina 7
C7.BD
Baze de Date

a) Un muncitor nu poate avea un salariu mai mare de 5000 de lei.


b) Un director nu poate avea un salariu mai mic de 7000 de lei.
Cele dou enunuri de mai sus pot fi privite ca fiind dou predicate, care
completeaz (printr-un I logic) predicatul extern ce constituie reprezentarea
conceptual a posibililor angajai: Angajatul cu numrul identificare id_persoan are
numele nume_persoan, este nascut n data data_naterii, are n cadrul organizaiei
noastre funcia funcie i salariul de baz n valoare de salariu lei.
Astfel, predicatul extern al angajailor admisibili restrnge posibilitile de
instaniere ale predicatului extern iniial prin introducerea celor dou condiii
suplimentare:
Angajatul cu numrul identificare id_persoan are numele nume_persoan,
este nascut n data data_naterii, are n cadrul organizaiei noastre funcia funcie i
salariul de baz n valoare de salariu lei. n plus, un muncitor nu poate avea un salariu
mai mare de 5000 de lei, iar un director nu poate avea un salariu mai mic de 7000 de
lei.
Este important de subliniat c prin introducerea constrngerilor de integritate
nu facem altceva dect s introducem semantica domeniului modelat n definiia
datelor. La nivel conceptual, aceasta se poate realiza prin completarea predicatului
extern, ca n exemplul de mai sus. La nivel logic, vom restrnge mulimea de tupluri
posibile ((F1)) prin specificarea formal a unor predicate n cadrul definiiei
mulimii de tupluri admisibile:
t-angajai := { t(F1) ( t(funcie) = muncitor t(salariu)<5000)
( t(funcie) = director t(salariu)>7000) }.
Predicatele externe obinute prin specificarea tuturor constrngerilor de
integritate se constituie n criterii de acceptare a actualizrilor unei baze de date.
Fiind situate ns la nivel conceptual, ele vor avea o definiie mai mult sau mai puin
informal. De aceea, ele vor fi putea fi nelese doar de ctre utilizatori, nu i de
ctre sistem(ul automat). Criteriile de acceptare a actualizrilor nelese de sistem
sunt reprezentate de constrngerile exprimate la nivel logic (formal), prin definirea
mulimilor de tupluri admisibile
n consecin, sistemul (automat) nu va putea asigura corectitudinea datelor din
baza de date, respectiv faptul c propoziiile coninute de aceasta sunt adevrate n
lumea real. Tot ce va putea sistemul realiza este s nu permit apariia de
inconsistene n baza de date, respectiv introducerea de tupluri care s violeze
constrngerile de integritate specificate formal n definiia logic datelor (reprezentnd
astfel propoziii FALSE).
Observm c o baz de date consistent nu este n mod necesar corect: chiar
dac propoziiile coninute respect toate constrngerile de integritate specificate,
aceste propoziii pot sau nu s reflecte fapte ADEVRATE n lumea real. Dincolo de
controlul automat, de ctre sistem, al consistenei bazei de date, responsabilitatea
reflectrii corecte a realitii n baza de date va cdea ntotdeauna n sarcina
utilizatorului. Cu ct vom putea transfera mai mult coninut semantic din contiina
utilizatorului n definiia logic a datelor, prin intermediul constrngerilor de
integritate exprimate formal, pe nelesul sistemului, cu att mai mult vom putea

Pagina 8
C7.BD
Baze de Date

evita posibilitatea erorii umane, ce poate determina incorectitudinea unor date din
baza de date.
Asigurarea consistenei bazei de date, prin verificarea de ctre sistem a
constrngerilor de integritate, este deosebit de important din punct de vedere al
corectitudinii informaiilor ce pot fi extrase din baza de date. Dup cum se va vedea n
continuare, pornind de la o baz de date inconsistent, se poate demonstra c o
propoziie arbitrar aleas este ADEVRAT (6).
S considerm, de exemplu c baza de date admite la un moment dat
introducerea unui tuplu ce reprezint un angajat, cu funcia muncitor i salariu 6000.
Conform Ipotezei Lumii nchise, din moment ce tuplul respectiv apare n baza de date,
el reprezint o propoziie ADEVRAT. Dac ns folosim valorile atributelor tuplului
pentru a instania predicatul extern al angajailor admisibili, definit anterior, vom
obine o propoziie FALS.
Observm deci c, notnd cu p propoziia reprezent de tuplul considerat, baza
de date ne permite s afirmm c att p ct i p sunt adevrate de aici i
inconsistena. S considerm acum propoziia arbitrar q. Atunci:

Din p = ADEVRAT putem infera c pq= ADEVRAT;


Din p = ADEVRAT i pq= ADEVRAT putem infera c q=
ADEVRAT.
Dar q a fost ales arbitrar. Rezult aadar c, dat fiind o baz de date
inconsistent (n care cel puin o constrngere de integritate este violat), putem
demonstra c o propoziie arbitrar aleas este ADEVRAT.
n general, putem considera constrngerile de integritate ca fiind condiii
impuse asupra valorilor pe care le poate lua o variabil. Din acest punct de vedere,
orice demers de structurare a datelor nu nseamn altceva dect specificare de
constrngeri de integritate.
Astfel, declararea la nivel conceptual a parametrilor unui predicat extern,
constrni implicit, prin definiie, s ia valori dintr-o anumit mulime (domeniu de
valori), respectiv specificarea la nivel logic a caracterizrii corespunztoare
predicatului, sunt constrngeri de integritate impuse bazei de date prin nsi definiia
structurii acesteia. C. J. Date le numete constrngeri a priori (7). De aceea, el
afirm, pe bun dreptate, c proiectarea unei baze de date este definire de
constrngeri de integritate (8).
Tabelul
n accepiune general, numim tabel orice structur bidimensional, afiat sub
form de rnduri i coloane. Din punct de vedere matematic, vom defini tabelul prin
urmtoarea definiie formal.
Definiie: Dac T i H sunt mulimi, atunci T este un tabel pe mulimea H
( tT: t este o funcie pe mulimea H ).
Observm c un tabel se definete ca o mulime de funcii care au acelai
domeniu. Definiia de mai sus este general i nu impune nici o restricie asupra
elementelor lui H. Totui, n practic vom fi interesai mai ales de acele cazuri n care
H este o mulime de atribute.

Pagina 9
C7.BD
Baze de Date

S considerm, de exemplu: H={ id_persoan , nume_persoan , data_naterii ,


funcie , salariu }. Observm c mulimea de funcii de mai jos este, conform
definiiei, un tabel:
T1 := { { (id_persoan;101), (nume_persoan;Persoana1), (data_naterii;01-
01-1990), (funcie;muncitor) (salariu;1500) }
,{ (id_persoan;102), (nume_persoan;Persoana2), (data_naterii;07-
02-1980), (funcie;maistru) (salariu;2000) } }
De asemenea, funciile reprezentate de cele dou elemente ale tabloului de mai
sus, sunt n acelai timp i tupluri ale produsului generalizat (F1) al caracterizrii:
F1 := { (id_persoan;[1999])
, (nume_persoan;varchar(40))
, (data_naterii;date)
, (funcie;{muncitor, maistru, contabil, director})
, (salariu;[199999])
}.
Deci o mulime de tupluri cu acelai domeniu este, conform definiiei, un tabel.
Avnd dat o caracterizare, produsul generalizat al acesteia este de asemenea un tabel.
n plus, orice submulime a produsului generalizat este tot un tabel.
Dac T este definit ca un tabel pe mulimea H, ne vom referi la mulimea H ca
fiind capul (the heading) tabelului T.

Pagina 10
C7.BD
Baze de Date

TEST DE AUTOEVALUARE

ncercuii rspunsurile corecte la


ntrebrile urmtoare.

ATENIE: pot exista unul,


niciunul sau mai multe rspunsuri corecte la
aceeai ntrebare.
Timp de lucru: 10 minute

1) Orice demers de structurare presupune definirea unor constrngeri de


integritate. Da/Nu
2) Un tabel se definete formal printr-o mulime de funcii cu acelai domeniu.
Da/Nu
3) Omulime de.tupluri cu acelai domeniu este, prin definiie, un tabel.
Da / Nu
4) Modelul relaional se bazeaz pe:
a) Ipoteza Lumii Deschise (Open World Assumption) Da / Nu
b) Ipoteza Lumii nchise (Closed World Assumption) Da / Nu
5) Mulimea tuturor instanierilor posibile ale predicatului extern asociat unei
caracterizri va fi reprezentat la nivel logic de mulimea de tupluri dat de
produsul generalizat al caracterizrii. Da / Nu

Grila de evaluare: 1-Da; 2-Da; 3-Da; 4-b; 5-Da.

Pagina 11
C7.BD
Baze de Date

REZUMAT

Mulimea i elementele mulimii sunt considerate noiuni primare, ce nu pot fi


de aceea definite formal. Intuitiv, putem privi mulimea ca pe o colecie de elemente
distincte (concrete sau abstracte), caracterizat integral de aceste elemente (i de nimic
altceva).
O funcie ce returneaz o mulime se numete caracterizare dac ea este
folosit pentru a exprima fapte din lumea real, specificnd atributele relevante alturi
de de mulimea de valori admisibile pentru fiecare atribut.
Caracterizarea mai poate fi privit ca o metod de specificare formal a unui
predicat ce descrie un fragment din realitate. Parametrii predicatului vor fi reprezentai
de atributele caracterizrii, iar mulimea din care acetia iau valori va corespunde
mulimilor de valori definite pentru atributele caracterizrii.
n termenii arhitecturii pe patru niveluri, caracterizarea corespunde nivelului
logic (n mod necesar formal), iar predicatul corespunde nivelului conceptual
(semantic, posibil informal). Datorit faptului c reprezint datele ntr-o form
apropiat de percepia utilizatorilor, un astfel de predicat se numete predicat extern.
Motivul pentru care odat cu proiectarea nivelului logic al unui sistem
informaional este important s se specifice, de asemenea, o reprezentare conceptual a
sistemului, este c o categorie important de aspecte semantice, ce pot fi exprimate
explicit ntr-o manier informal la nivel conceptual, devin implicite n specificarea
formal aferent nivelului logic. De aceea,pentru a putea utiliza sistemul, utilizatorul
trebuie s cunoasc aspectele semantice ce nu pot fi reprezentate formal la nivel logic,
pentru a putea interpreta datele i a le transforma n informaii corecte.
Mulimea tuturor instanierilor posibile ale predicatului extern asociat
caracterizrii va fi reprezentat la nivel logic de mulimea de tupluri dat de produsul
generalizat al caracterizrii, (F1). n general, nu suntem interesai de mulimea
tuturor tuplurilor posibile, ci de mulimea tuplurilor admisibile, care satisfac anumite
cerine (semantice) specifice realitii modelate. Privite din perspectiva afacerii (a
domeniului modelat), aceste cerine sunt numite reguli de afaceri; din perspectiva
sistemului informaional, ele se vor numi constrngeri de integritate.
O mulime de tupluri cu acelai domeniu este, conform definiiei, un tabel.
Avnd dat o caracterizare, produsul generalizat al acesteia este de asemenea un tabel.
n plus, orice submulime a produsului generalizat este tot un tabel.
Dac T este definit ca un tabel pe mulimea H, ne vom referi la mulimea H ca
fiind capul (the heading) tabelului T.

Pagina 12
C7.BD
Baze de Date

O funcie ce returneaz o mulime se numete


caracterizare dac ea este folosit pentru a exprima fapte din
lumea real, specificnd atributele relevante alturi de de
TERMENI mulimea de valori admisibile pentru fiecare atribut.
Un tabel se definete ca o mulime de funcii care au
acelai domeniu.
Dac T este definit ca un tabel pe mulimea H, ne vom
ESENIALI referi la mulimea H ca fiind capul (the heading) tabelului T.
n modelul relaional, un tuplu este considerat expresia
formal a unei propoziii din lumea real.

Pagina 13
C7.BD
Baze de Date

BIBLIOGRAFIE
1. Brock, Bert de. Foundations of Semantic Databases. s.l. : Prentice Hall, 1995.

2. . De Grondslagen van Semantische Databases. s.l. : Academic Service, 1989.

3. Haan, Lex de and Koppelaars, Toon. Applied Mathemathics for Database Professionals.
s.l. : Apress, 2007. ISBN: 978-1-59059-745-3.

4. Lelutiu, Alexandru. Perenitatea conceptelor promovate de bazele de date. Cluj-Napoca :


Casa Cartii de stiinta, 2002.

5. Stoll, Robert R. Set Theory and Logic. s.l. : Dover Publications, Inc., 1979. ISBN: 0-486-
63829-4.

6. Date, C. J. Logic and Databases: The Roots of Relational Theory. s.l. : Trafford Publishing,
2007.

7. . An Introduction to Database Systems (8th edition). s.l. : Addison-Wesley, 2003.

8. . What Not How: The Business Rules Approach to Application Development. s.l. :
Addison-Wesley, 2000.

Pagina 14
C7.BD
Baze de Date

TEST DE EVALUARE

ncercuii rspunsurile corecte la


ntrebrile urmtoare.

ATENIE: pot exista unul,


niciunul sau mai multe rspunsuri corecte la
aceeai ntrebare.
Timp de lucru: 10 minute

1) Metoda predicativ de specificare a mulimilor permite definirea unei


mulimi pornind de la o alt mulime dat i specificnd un predicat cu un
parametru care poate lua valori din respectiva mulime. Da / Nu
2) Predicatele externe obinute prin specificarea constrngerilor de integritate
nu constituie criterii de acceptare a actualizrilor unei baze de date.
Da / Nu
3) O baz de date consistent nu este n mod necesar corect Da / Nu
4) Constrngerile de integritate specificate formal la nivel logic se reflect
ntotdeauna n predicatul extern asociat structurii de date considerate.
Da / Nu
5) Predicatele externe obinute prin specificarea tuturor constrngerilor de
integritate se constituie n:
a) mulimi de funcii derivate din caracterizrile corespunztoare
constrngerilor de integritate considerate
Da / Nu
b) criterii de acceptare a actualizrilor unei baze de date Da / Nu
c) niciuna dintre acestea Da / Nu

Grila de evaluare: 1-Da; 2-Nu; 3-Da; 4-Da; 5-b.

Pagina 15
C7.BD

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