2.modrel

49
 Modelo Relacional ©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 2007 versão 2!" Modelo Relacional

Upload: anacco

Post on 04-Feb-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 1/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 2/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Modelo de Dados

Tipos deEstruturasde Dados

Operadores

Regras deIntegridade

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 3/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Estruturas de Dadosdo

Modelo Relacional

 RELAÇÕES implementadasna forma deTABELAS

 RELAÇÕES 

implementadasna forma deTABELAS

Tipos deEstruturas

de Dados

Regras deIntegridade

Operadores

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 4/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Relação (1)

Dada uma colecção de conjuntos D1,D2,.......,Dn (não

necessariamente disjuntos), R é uma relação naquelesconjuntos se fôr constituida por um conjunto de n-uplos

ordenados di1, di2, .....,din! tais que"

∀i ∀ j dij ε # Dj ou é nulo (null)

$ardinalidade ← Número de n-uplos da relação

Dom%nios de R ←   D1, D2, ........, Dn

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 5/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Relação (2)

Relação Tabela de valores, com algumas características especiais:

→ Os valores de cada coluna têm todos o mesmo domínio(conjunto de valores possíveis) e cada coluna tem um título

→ Não eiste a noção de ! posição! em relação "s colunas, i#e#,

a ordem das colunas $ arbitr%ria & não eiste a noção de! próxima coluna! ou !coluna anterior !

→ Não eiste a noção de !n'mero de lina!, i#e#, a ordem daslinas $ arbitr%ria & não eiste a noção de ! próxima linha! ou!linha anterior !

odemos alterar a ordem das linas oudas colunas, sem *ue isso a+ecte o

conte'do da in+ormação

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 6/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Exemplo de Relação

N#$%& No%e 'ele( Ca)eg *alario Co%%issão Fun+ão

10 Antunes 12554 B 100 15 Analista

20 Bento 5421 A 250 50 Dire!tor  

0 "orreia E #0$5 %orteiro

40 Dias 245& " '0$5 %rogramador  

50 Edmundo B 120 12$5 "onta(ilista

$$$ $$$ $$$ $$$ $$$ $$$ $$$

Dom)nio

 *+meros inteiros positi,os

Dom)nio

"adeias de !ara!teres de !omprimento inferior ou igual a 20

Empregado

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 7/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Conceitos

Grau da Relação  *+mero de !olunas

Esquema de Relação Defini-.o de uma rela-.o

Empregado / N#$%&, No%e, 'ele(, Ca)eg, *alario, Co%%issão, Fun+ão - 

Eemplo

Esquema Relacional Defini-.o de uma Base de Dados Rela!ional

"on3unto de Esuemas de Rela-.o

tri!uto "oluna

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 8/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

C"a#e Candidata

C"a#e (candidata) de uma Relação Atri(uto ou !on3unto de atri(utosue identifi!am !ada o!orrn!ia da rela-.o6 i$e$6 n.o podemeistir duas lin7as da rela-.o !om o mesmo !on3unto de,alores neste/s8 atri(uto/s8

Enu%.cli no%e.cli %orada cidade &as )i&o.cli n.con)ri

1 Ant9nio A(reu R$Al(erto Antunes Andorra Andorra 1 12 45# &:'

2 Bernardo Bento R$Beta Br;s Bruelas Belgi!a 2 &:' 12 45#

"arlos "astro R$ "lara "ampos "am(erra "anad; 1 45# &:' 12

$$$ $$$ $$$ $$$ $$$ $$$ $$$

20 <anuel <atos R$<ar!o <oita <aputo <o-am( 2 111 222

$$$ $$$ $$$ $$$ $$$ $$$ $$$

"liente

"7a,es

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 9/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

C"a#e $rim%ria

C"a#e $rim%ria de uma Relação De entre as !7a,es !andidatas de umarela-.o6 es!ol7e=se uma para ser a !7a,e efe!ti,a da mesma /a

ue for mais +til6 no sistema em uest.o8$ A essa !7a,e6 d;=seo nome de Chave Primária

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 10/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

C"a#e Estrangeira

C"a#e Estrangeira de uma Relação Em algumas rela->es6 temosum atri(uto /ou !on3unto de atri(utos8 !u3as o!orrn!ias s.orefern!ias a uma !7a,e !andidata /normalmente a !7a,e prim;ria8 de uma outra rela-.o$ A esses atri(utos damos onome de Chaves Estrangeiras

n.e%& no%e cod.ca)eg

01 ?o.o $$$ !

02 ?os@ $$$ !1

0 il $$$ !2

04 ?+lio $$$ !1$$$ $$$ $$$ $$$

Empregadocod.ca) design venc.ase

!1 Dire!tor 00

!2 T@!ni!o 200

! Admin 120

!4 Auil '0

"ategoria

"7a,e Estrangeira

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 11/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

&ase de Dados Relacional

onjunto de Relaç-es, cujoconte'do varia ao longo do tempo

onjunto de Relaç-es, cujo

conte'do varia ao longo do tempo

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 12/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Exemplo de&ase de Dados Relacional

nu%.cli no%e.cli %orada cidade &as )i&o.cli

1 Ant9nio A(reu R$Al(erto Antunes Andorra Andorra 1

2 Bernardo Bento R$Beta Br;s Bruelas Belgi!a 2

"arlos "astro R$ "lara "ampos "am(erra "anad; 1

$$$ $$$ $$$ $$$ $$$ $$$

20 <anuel <atos R$<ar!o <oita <aputo <o-am( 2$$$ $$$ $$$ $$$ $$$ $$$

"liente

Lin7aCa!tura

nu%.(ac)ura da)a.e%issão da)a.&aga%en)o nu%.cli1 1=?an=:' 1=Ce,=:' 20

2 12=Ce,=:' 1

=<ar=:' 20=<ar=:'

$$$ $$$ $$$ $$$

Ca!turacod.&rod no%e.&rod &re+o 1)d.eis)e01 L;pis 100 254

02 "aneta 150 121

0 R@gua 500 54

$$$ $$$ $$$ $$$

%roduto

Lin7a de Ca!tura

nu%.(ac) cod.&rod 1uan)1 0" 20

1 02 "3

1 07 30

2 04 "0

2 0" 23

02 "5

03 "3

0" "7

02 24

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 13/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ExemploEsquema Relacional

Ca!tura / numfa!tura6 dataemiss.o6 datapagamento6 num!li 8

"liente / num!li6 nome!li6 morada6 !idade6 pa)s6 tipo!li 8

%roduto / !odprod6 nomeprod6 pre-o6 tdeiste 8

Lin7aCa!tura / numfa!tura6 !odprod6 uant 8

M d l R l i l

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 14/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

'peradores doModelo Relacional

6&eradoressore RELAÇÕES

6&eradoressore RELAÇÕES

Tipos deEstruturasde Dados

Regras deIntegridade

Operadores

M d l R l i l

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 15/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

'peraçes so!re Relaçes

R1

R2

R

'perador 

Relacional

Rela->es

Rfinal

Operandos Resultado

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 16/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

$roecçãoA partir de <A rela-.o6 o(ter apenas algumas colunas /!om elimina-.o de repeti->es8

"liente

no%e.cli %orada

Ant9nio A(reu R$Al(erto Antunes

Bernardo Bento R$Beta Br;s

"arlos "astro R$ "lara "ampos$$$ $$$ $$$

<anuel <atos R$<ar!o <oita

<ario <artins R$<aria <endes

"lientenome!li6 moradaF

Pas

Andorra

B@lgi!a"anad;

<o-am(

"liente%a)sF

nu%.cli no%e.cli %orada cidade &as )i&o.cli

1 Ant9nio A(reu R$Al(erto Antunes Andorra Andorra 1

2 Bernardo Bento R$Beta Br;s Bruelas B@lgi!a 2

"arlos "astro R$ "lara "ampos "am(erra "anad; 1

$$$ $$$ $$$ $$$ $$$ $$$

20 <anuel <atos R$<ar!o <oita <aputo <o-am( 2

21 <ario <artins R$<aria <endes <anga <o-am(

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 17/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

$roecção

*ea R (+,-) com + . 1, 2, //////// , 0

e - . 01, ////////// , n

proecção de R so!re os atri!utos + representada pelo conunto

R3+4 . 5 x6 ∃ 7 6 (x,7) existe em R (+,-) 8

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 18/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Restrição ou *elecção

A partir de <A rela-.o6 o(terapenas algumas linhas

/eliminando as restantes86utiliGando para isso uma ualuer !ondi-.o (ooleana

Lin7aCa!tura

nu%.(ac) cod.&rod 1uan)

2   04 "0

2   0" 23

Lin7aCa!turaE numfa!t 7 2F

%odemos su(stituir este operador por um outroualuer6 a ue !7amaremos Hoperador θ H

nu%.(ac) cod.&rod 1uan)

1 01 20

1 02 151 0& 50

2   04 "0

2   0" 23

02 1

05 15

01 1&

02 2#

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 19/49

Modelo Relacional

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Restrição ou *elecção

*ea R (1, 2, ///////// , n) e $ uma expressão l9gica de:inida so!re

D1 ; D2 ; //////// ; Dn, com Di domínio de i/

restrição de R a respeito de $ representada pelo conunto

R3$4 . 5 x6 x em R e $(x) #erdadeira 8

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 20/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

' 'perador<  <

H H poder; ser um dos seguintes operadores

" Igualdade

2 Desigualdade5 <enor ue

! <enor ou igual ue

3 <aior ue

4 <aior ou igual ue

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 21/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Restrição ou *elecção (cont)

%oderemos tam(@m restringir o !on3unto das lin7as ue ueremos o(ter6 utiliGandoos operadores l9gi!os /HeH6 HouH6 HnegaçãoH 8 so(re duas ou mais !ondi->es

nu%.(ac) cod.&rod 1uan)

1 01 20

1 02 151 0& 50

2 0# 10

2   0" 23

02 1

05 15

01 1&

02 2#

Lin7aCa!tura

nu%.(ac) cod.&rod 1uan)

2   0" 23

Lin7aCa!turaE /numfa!t28 /uant 20)≥]

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 22/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

$roduto Cartesiano

H"om(ina-.o de TODAS as lin7as de uma ta(ela !om TODAS as lin7as da outraH

nu%.cli no%e.cli

1 Ant9nio A(reu

2 Bernardo Bento

"arlos "astro

"lientecod.&rod no%e.&rod

01 L;pis

02 "aneta

%roduto

nu%.cli no%e.cli cod.&rod no%e.&rod

1 Ant9nio A(reu 01 L;pis

2 Bernardo Bento 01 L;pis

"arlos "astro 01 L;pis

1 Ant9nio A(reu 02 "aneta2 Bernardo Bento 02 "aneta

"arlos "astro 02 "aneta

"liente==%roduto

/ pou!autilidade

 pr;ti!a 8

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 23/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

=unção >atural ou <Equi- Join<A partir de duas ta(elas6 o(ter uma ter!eira6 !on!atenando as !olunas e restringindo

apenas Js lin7as !om o mesmo ,alor em algum atri(uto

nu%.(ac) cod.&rod 1uan)

1 01 20

1 02 15

1 0& 50

2 0# 102 01 25

02 1

05 15

01 1&

02 2#

Lin7aCa!turacod.&rod no%e.&rod &re+o 1)d.eis)e

01 L;pis 100 254

02 "aneta 150 121

0 R@gua 500 54

%roduto

 Lin7aCa!tura !odprod !odprod F %roduto

 *ota ?un-.o %roduto "artesiano K Restri-.o

nu%.(ac) 1uan) cod.&rod cod.&rod no%e.&rod &re+o 1)d.eis)e

1 20 0" 0" L;pis 100 254

1 15 02 02 "aneta 150 121

2 25 0" 0" L;pis 100 254

1 02 02 "aneta 150 121

1& 0" 0" L;pis 100 254 2# 02  02 "aneta 150 121

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 24/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

=unção >atural ou <Equi-Join<

*ea R1 (, &1) e R2 (&2,C) duas relaçes e &1 e &2 conuntos deatri!utos compatí#eis/

=unção >atural das relaçes R1 e R2 so!re os conuntos de atri!utos

&1 e &2 representada pelo conunto

R13&1 . &24 R2 . 5 (a, !1, c) 6 (a, !1) em R1 e (!2, c) em R2 e !1 . !2 8

.eja / 0 1/2,##### /n3 com 4/i domínio de /i e 5 0 152,###,5n3 com

domínio 45j domínio de 5j, conjuntos de atributos# / e 5 denominam?se

conuntos de atri!utos compatí#eis se 4/i 0 45i

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 25/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

θ ?=unção%odemos etender a no-.o de ?un-.o6 de forma ue a !ondi-.o de restri-.o das

lin7as n.o se3a apenas a igualdade6 mas uma ualuer opera-.o H H

nu%.(ac) cod.&rod 1uan)

1 01 20

1 02 15

1 0& 50

2 0# 10

Lin7aCa!turacod.&rod no%e.&rod &re+o 1)d.eis)e

01 L;pis 100 254

02 "aneta 150 121

0 R@gua 500 54

%roduto

Lin7aCa!tura E !odprod !odprod F %roduto

> H8H

nu%.(ac) 1uan) cod.&rod cod.&rod no%e.&rod &re+o 1)d.eis)e

1 20 0" 02 "aneta 150 121

1 20 0" 05 R@gua 500 541 15 02 05 R@gua 500 54

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 26/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

θ

 ? =unção

*ea R1 (, &1) e R2 (&2,C) duas relaçes, &1 e &2 conuntos de atri!utos

compatí#eis e Θ um operador !in%rio 5 ., ,&,! ,!, !&' aplic%#el

aos domínios de &1 e &2/

operaçãoΘ−

 unção das relaçes R1 e R2 so!re os conuntos de

atri!utos &1 e &2 representada pelo conunto

R13&1 Θ &24 R2 . 5 (a, !1,!2, c) 6 (a, !1) em R1 e (!2, c) em R2 e !1 Θ  !2 8

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 27/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Di#isão Relacional

cod.(ornec cod.&rod

f1 p1f1 p2

f1 p

f1 p4

f1 p5

f1 p#

f2 p1

f2 p2

f p2

f4 p2

f4 p4

f4 p5

Corne!eu

cod.&rod

 p2 p4

%rods=espe!iais

@ . f1

f4

Resultado

Aornecedores que :orneceramB'D'* os produtos da ta!ela<Prods-especiais<

 *ota-.o→ Resultado← Corne!eu !odforne!6 !odprod M !odprod F%rods=espe!iais

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 28/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Di#isão Relacional

*ea R1 (, &) e R2 (C) duas relaçes e & e C conuntos de atri!utos

compatí#eis

Di#isão de R1 por R2 so!re & e C representada pelo conunto

R13& 6 C4 R2 . R () 6 r (a) ε R () se ∀c ε  R2 (C), R1 (a,c) ε R1  8

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 29/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

niãoni.o de duas rela->es @ a rela-.o !omposta por todas as lin7as de am(as

/!om elimina-.o de repeti->es 8

No%e Morada

Al(erto Al,es Alameda

"arlos Odori!o "ampo dNOuriue

Al,es Bernardo A,$ Berna

Cernando Contes Cigueira da CoG

No%e Morada

<anuel <endes <adeira

"arlos Odori!o "ampo dNOuriue

?+lio ?aime ?amai!aAl,es Bernardo A,$ Berna

Rui Rodrigues Ri(eirin7a

"lientes

Corne!edores

No%e Morada

Al(erto Al,es Alameda

"arlos Odori!o "ampo dNOuriue

Al,es Bernardo A,$ BernaCernando Contes Cigueira da CoG

<anuel <endes <adeira

?+lio ?aime ?amai!a

Rui Rodrigues Ri(eirin7a

"lientes = 9N:6N = Corne!edores

Os !lientes e os Corne!edores

 *ota as rela->es ter.o ue ser !ompat),eis

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 30/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntersecçãoInterse!-.o de duas rela->es @ a rela-.o !omposta pelas lin7as ue perten!em a

am(as as rela->es

No%e Morada

Al(erto Al,es Alameda

"arlos Odori!o "ampo dNOuriue

Al,es Bernardo A,$ Berna

Cernando Contes Cigueira da CoG

"lientes No%e Morada

<anuel <endes <adeira

"arlos Odori!o "ampo dNOuriue

?+lio ?aime ?amai!a

Al,es Bernardo A,$ BernaRui Rodrigues Ri(eirin7a

Corne!edores

No%e Morada

"arlos Odori!o "ampo dNOuriue

Al,es Bernardo A,$ Berna

"lientes = :n)ersec+ão = Corne!edoresOs !lientes ue

tam(@m s.oforne!edores  *ota as rela->es ter.o ueser !ompat),eis

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 31/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Di:erençaDiferen-a de duas rela->es @ a rela-.o !omposta pelas lin7as ue perten!em J

 primeira e *O perten!em J segunda

No%e Morada

Al(erto Al,es Alameda

"arlos Odori!o "ampo dNOuriue

Al,es Bernardo A,$ Berna

Cernando Contes Cigueira da CoG

"lientes No%e Morada

<anuel <endes <adeira

"arlos Odori!o "ampo dNOuriue

?+lio ?aime ?amai!a

Al,es Bernardo A,$ BernaRui Rodrigues Ri(eirin7a

Corne!edores

No%e Morada

Al(erto Al,es Alameda

Cernando Contes Cigueira da CoG

"lientes P Corne!edoresOs !lientes ue

n.o s.oforne!edores  *ota as rela->es ter.o ueser !ompat),eis

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 32/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

' Conceito de #alor <NULL<

 *uma rela-.o podemos6 em determinado momento6 ter um atri(uto !u3o ,alor @des!on7e!ido ou n.o apli!;,el no momento$ DiG=se ent.o ue esse elemento temo ,alor N9LL

aracterísticas dos valores N6778s:

Independente do dom)nio = inteiro6 real6 !ara!ter6 data6 et!$

 *.o !ompar;,eis entre si6 i$e$6 nun!a poderemos diGer ue um ,alor *LL @ igual a outro ,alor *LL

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 33/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

'uter Equi?=oin

"onsidere as seguintes rela->es

a1 (1a2 (2

a (

S / A B 8

 (2 d1 (2 d2

 ( d

 (4 d4

T / " D 8

?un-.o *aturalou

 Inner Equi-JoinOuter Equi-Join

Qalores Ineistentes/*LL8

a" " ;; ;;

a2 2 2 d"

a2 2 2 d2

a5 5 5 d5

;; ;; ! d!

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 34/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

"Left  < e <Right < 'uter=oin

 Left Outer Join  Right Outer Join

S ( " F T / A B " D 8 S ( M " F T / A B " D 8

. 9 b 0; < T ( = > 4 )

Outer Join

a" " ;; ;;

a2 2 2 d"

a2 2 2 d2

a5 5 5 d5

 P  ;; ! d!

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 35/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

'uter θ ?=oin

%odemos etender o !on!eito de Outer=?oin para os !asos em ue a !ompara-.o @outra al@m da simples igualdade

a1 1

a2 2

a

a4 4

S / A B 8

1 d12 d2

d

4 d4

T / " D 8 P == 1 d1

a1 1 2 d2

a1 1 d

a1 1 4 d4

a2 2 d

a2 2 4 d4

a 4 d4

a4 4 == ==

S E B MR " F / A B " D 8

Inner θ = ?oin

Outer θ = ?oin

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 36/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Resumo das'peraçes Relacionais a!ordadas

S

S

S

Sele!-.o %ro3e!-.o ?un-.o inner  e outer %roduto

ni.o Interse!-.o Diferen-a

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 37/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Regras de ntegridade

Entit

Domain

Column

Referen!ial

Entit

Domain

Column

Referen!ial

Tipos deEstruturasde Dados

Regras deIntegridade

Operadores

ser Definedser Defined

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 38/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridade de Entidades

Nenuma componente de uma cave prim%ria de uma relação poder% emalgum momento ter valor N677

EE

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 39/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridade deDomínio

ada coluna de cada relação tem um domínio, isto $, um conjunto (limitadoou não) de valores possíveis# ?m todas as linas dessa relação, o valordessa coluna ter% *ue pertencer .?@R? a esse domínio#

DD

? (.A7B): Create Domain 4Contribuinte as number(D)E

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 40/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridade de Colunas

 = integridade de colunas permite de+inir, para cada coluna, o conjunto dosvalores possíveis#

CC

Eempregado/ n=emp6 nome6 morada6 sal;rio6 diuturnidades 6 $$$8

Dom)nio Inteiros

Regras de Integridade de !olunas

n=emp −> %ositi,o

sal;rio −>  %ositi,o

diuturnidades −> 0 e 5 → U

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 41/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridadeRe:erencial

Numa relação, *ual*uer ocorrência de uma cave estrangeira dever%obrigatoriamente eistir como ocorrência de uma cave candidata(normalmente a prim%ria) da relação " *ual se re+ere (ou ser nula no casode não obrigatoriedade)

RR

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 42/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridade De:inida pelotiliFador 

Aual*uer outra regra a *ue as ocorrências de uma determinada base dedados deverão obedecer# ?stão intimamente ligadas a regras do negFcio#

?stas restriç-es de+inidas pelo utiliGador, sendo independentes do modelo

de dados usado, são conecidas como Hregras de integridade eplícitasI(ao contr%rio das implícitas, prFprias de cada modelo de dados)#

.ão classi+icadas em dois tipos:

 J restriç-es est%ticas

 J restriç-es dinKmicas

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 43/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridade De:inida pelotiliFador 

Restriçes est%ticas

orrespondem a restriç-es *ue asseguram a integridade dos v%riosestados pelos *uais passa a >4#

?emplo:

O preço de venda de um determinado artigo não pode ser inferior aovalor de compra desse artigo acrescido de 3%.

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 44/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

ntegridade De:inida pelotiliFador 

Restriçes dinmicas

orrespondem a restriç-es *ue asseguram *ue a transição entre doisestados $ v%lida e preserva a integridade da >4 +ace "s regras de negFcio#

?emplo:

O estado civil de um indivíduo, não pode assumir o valor de solteiro,após ter sido divorciado, viúvo ou casado.

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 45/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

' Hue realmente um *G&DrelacionalI

*egundo Codd (;) um *G&D pode ser considerado minimamenterelacional se satis:aF as seguintes condiçes6

L Estrutura6 o utiliFador são apresentadas apenas ta!elas enada mais do que ta!elas

L Manipulação6 'peraçes de restrição, proecção e unçãonatural, sem necessidade de de:inição de camin"os :ísicos deacesso que suportem essas operaçes

(;) ?#M# odd#!Relational 4atabase: = ractical Moundation +or rodutivit#! CAC   2J, N B(Mevereiro 2DPB)

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 46/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

' que realmente um *G&DrelacionalI

(;)  #Q#4ate#  An !ntroduction to "ata#ase $stems . Reading, @ass: =ddison esle, S ed#(2DDU)

Ta(ular  <inimamente

Rela!ionalRela!ional  "ompletamente

  Rela!ional

Sistemas Rela!ionais

E E E E< < < <

I I I I

Modelo Relacional

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 47/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

' que realmente um *G&DrelacionalI

partir da de:inição de Codd, C"ris Date(;) sugere uma classi:icação

para *G&D relacionais6

L Ba!ular6 *uporta a estrutura ta!ular, mas não os operadoresrelacionais

L Minimamente relacional6 *uporta a estrutura ta!ular e osoperadores de restrição, proecção e unção (apenas estes)

L Relacional6 *uporta a estrutura ta!ular e todos os operadoresda alge!ra relacional

L Completamente Relacional6 *uporta todos os aspectos domodelo relacional (estrutura ta!ular e domínios, todos osoperadores da alge!ra relacional e a integridade de entidadese re:erencial)

(;)  #Q#4ate#  An !ntroduction to "ata#ase $stems . Reading, @ass: =ddison esle, S ed#(2DDU)

Modelo Relacional

*G

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 48/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Em que medida um *G&DRelacional

*egundo um artigo posterior de Codd(;) um *G&D completamenterelacional (:ull7 relational) se gere a !ase de dados utiliFando apenas

e s9 as possi!ilidades o:erecidas pelo modelo relacional/

ssim sendo tem de satis:aFer as seguintes 12 regras

1/ n:ormação

2/ Garantia de acesso/ Bratamento sistem%tico de #alores nulos

K/ Cat%logo on?line e acti#o !aseado no modelo relacional

J/ *u!linguagem de manipulação de dados compreensí#el

L/ ctualiFação de #ies

(continua)

(;) ?#M# odd# !Vs 5our 4>@. Reall RelationalW#! (Computer&orld, Outubro 1K, 2DPS)E !4oes

5our 4>@. Run b te Rules#! (Computer&orld, Outubro 21, 2DPS)

Modelo Relacional

E did *G&D

7/21/2019 2.Modrel

http://slidepdf.com/reader/full/2modrel 49/49

©Jesualdo Fernandes/Ana Lucas/Chaves Magalhães/Pedro Neves – 20versão 2!"

Em que medida um *G&DRelacional

(continuação)

N/ nsert, pdate e Delete de alto ní#el

O/ ndependencia :ísica dos dados

P/ ndependencia l9gica dos dados

1Q/ ndependencia da ntegridade

11/ ndependncia da distri!uição

12/ >ão su!#ersão

(;) ?#M# odd# !Vs 5our 4>@. Reall RelationalW#! (Computer&orld, Outubro 1K, 2DPS)E !4oes

5our 4>@. Run b te Rules#! (Computer&orld, Outubro 21, 2DPS)