2.modrel
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
R
S
R
S
R
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)