Buscar

MicrosoftPowerPointBANCO_DE_DADOS_ALEXANDRE_WAGNER_MODELO_RELACIONAL_OFICIAL (1)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 56 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

EstruturadeDadoseEstruturadeDadose
SistemasdeIntegraSistemasdeIntegraççãoão
ModeloRelacionalModeloRelacional
Prof.AlexandreWagnerC.FariaProf.AlexandreWagnerC.Faria
MaterialadaptadodoLivro:SistemadeBancodeDados(Silberschatz,Korth,Sudarshan),
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Capítulo2:Modelorelacional
SistemadeBancodeDados,5/E
Modelorelacional
• Omodelorelacionalé hojeoprincipalmodelode
dados para aplicações comerciais e de
processamentodedados;
• Eleconquistousuaposiçãodedestaquedevidoa
sua simplicidade, o que facilitou o trabalho do
programador, comparado com os modelos
anteriores,
• Nestecapituloiremosestudarosfundamentosdo
modelorelacional,emseguida,iremosdescrever
a álgebra relacional, usada para especificar
requisiçõesdeinformações...
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Capítulo2:Modelorelacional
�Estruturadosbancosdedadosrelacionais
�Operaçõesfundamentaisdaálgebrarelacional
�Outrasoperaçõesdeálgebrarelacional
�Operaçõesdeálgebrarelacionalestendidas
�Valoresnulos
�Modificaçãodobancodedados
SistemadeBancodeDados,5/E
Modelorelacional
• Umbanco de dados relacional consiste em uma coleção
detabelas,cadaumacomumnomeúnicoatribuído.
• Uma linha em uma tabela representa uma relação entre
umconjuntodevalores;
• Informalmente,umatabelaé umconjuntodeentidades,e
umalinhaé umaentidade
• Comouma tabelaé umacoleçãodessas relações,existe
umaintimacorrespondênciaentreoconceitodetabelaeo
conceito matemática de relação, do qual o modelo de
dadosrelacionalextraiseunome.
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Exemplodeumarelação
SistemadeBancodeDados,5/E
Modelorelacional
• Considereatabelaanterior;
• Ela possui três cabeçalhos de coluna:
numero_conta,nome_agencia,esaldo.
• Segundo a terminologia do modelo relacional,
chamamosessescabeçalhosdeatributos.
• Paracadaatributo, existeumconjuntode valores
permitidos,queé odomíniodesteatributo
• Para o atribuito nome_agencia, por exemplo, o
domínio é o conjunto de todos os nomes da
agencia
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
Modelorelacional
• SejaD1oconjuntodetodososnúmerosdaconta,D2o
conjuntodetodososnomesdeagenciaeD3oconjunto
detodosossaldos
• Qualquer linhade conta precisa consistir emuma tupla
de3(v1,v2,v3).
• onde:
– v1é umnumerodeconta(ouseja,v1está nodominio
deD1)
– v2 é um nome de agencia (ou seja, v2, está no
dominio deD2)
– v3é umsaldo,(ouseja,v3está nodominio deD3)
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Estruturabásica
• Formalmente,dadososconjuntosD1,D2,….Dn umarelaçãor é um
subconjuntode
D1 xD2 x… xDn
Portanto,umarelaçãoé umconjuntoden tuplas (a1, a2,…,an)ondecada
ai ∈ Di
• Exemplo:Se
nome_cliente ={Jones,Smith,Curry,Lindsay}
rua_cliente ={Main,North,Park}
cidade_cliente ={Harrison,Rye,Pittsfield}
Entãor ={(Jones,Main,Harrison),
(Smith,North,Rye),
(Curry,North,Rye),
(Lindsay,Park,Pittsfield)}
é umarelaçãosobre
nome_cliente xrua_cliente xcidade_cliente
SistemadeBancodeDados,5/E
Modelorelacional
• Como as tabelas são basicamente relações,
usaremos os termos matemáticos relação e
tupla nolugardostermostabelaelinha.
•
• Uma variável de tupla é uma variável que
significa uma tupla, em outras palavras, uma
variáveldetupla é umavariávelcujodomínioé
oconjuntodetodasastuplas.
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
Modelorelacional
• Na relação conta da tabela anterior,
existemsetetuplas.
• Faça a variável, de tupla t se referir á
primeiratupla darelação.
• Usaremos a notação t[numero_conta]
para denotar o valor de t no atributo
numero_conta;
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Tiposdeatributo
�Cadaatributodeumarelaçãopossuium
nome
�Oconjuntodevalorespermitidospara
cadaatributoé chamadoodomíniodo
atributo
�Ovalorespecialnulo é ummembrode
tododomínio
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Esquemaderelação
� A1,A2,…,An sãoatributos
� R =(A1,A2,…,An )é umesquemaderelação
– Exemplo:
– Esquema_cliente =(nome_cliente,rua_cliente,
cidade_cliente)
� r(R)é umarelaçãonoesquemaderelaçãoR
– Exemplo:
– cliente(Esquema_cliente)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Instânciaderelação
� Osvaloresatuais(instânciaderelação)deumarelaçãosãoespecificados
porumatabela
� Umelementot der é umatupla,representadaporumalinha emumatabela
atributos
(ou colunas)
tuplas
(ou linhas)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Relaçõessãodesordenadas
� A ordem das A ordem das A ordem das A ordem das tuplastuplastuplastuplas éééé irrelevante (as irrelevante (as irrelevante (as irrelevante (as tuplastuplastuplastuplas podem estar em uma ordem podem estar em uma ordem podem estar em uma ordem podem estar em uma ordem 
arbitrarbitrarbitrarbitráááária)ria)ria)ria)
� Exemplo: relaExemplo: relaExemplo: relaExemplo: relaçççção ão ão ão contacontacontaconta com com com com tuplastuplastuplastuplas não ordenadasnão ordenadasnão ordenadasnão ordenadas
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Bancodedados
� Umbancodedadosconsisteemmúltiplasrelações
� As informações sobre uma empresa são divididas empartes, com cada relação
armazenandoumapartedasinformações
conta : armazena informações sobre contas
depositante : armazena informações sobre que cliente possui que conta
cliente:armazenainformaçõessobreclientes
� Armazenar todas as informações como uma única relação como
banco (número_conta, saldo, nome_cliente, ..)
resultaem
� Repetiçãodeinformações(porexemplo,doisclientespossuemumaúnicaconta)
� A necessidade de valores nulos (por exemplo, representar um cliente sem uma
conta)
� Teoriadanormalizaçãotratadecomoprojetaresquemasrelacionais
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Arelaçãocliente
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Arelaçãodepositante
SistemadeBancodeDados,5/E
Chaves
• È precisoterumamaneiradeespecificarcomoastuplas dentro
deumadeterminadarelaçãosãodistinguidas;
• Issoé expressoemtermosdeseusatributos,
• Ouseja,osvaloresdeatributodeumtupla precisamsertaisque
possamidentificarunicamenteatupla;
• Emoutraspalavras,nenhumpardetuplas emumarelaçãopode
terexatamenteomesmovalorparatodososatributos
• Uma superchave é um conjunto de um ou mais atributo que,
tomadoscoletivamente, nospermite identificarunicamenteuma
tupla narelação.
• Porexemplo:oçatributo id_cliente darelaçãoclienteé suficiente
paradistinguirumatupla clientedeoutra.
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Chaves
• SejaK⊆ R
• Ké umasuperchave deR seosvaloresparaK sãosuficientesparaidentificar
umatupla únicadecadarelaçãor(R) possível
• Com“r possível”,queremosdizerumarelaçãor quepoderiaexistirna
empresaqueestamosmodelando.
• Exemplo:{nome_cliente,rua_cliente}e
{nome_cliente}
são,ambas,superchaves deCliente,senenhumclientepuderteromesmo
nomedeoutrocliente.
• K é umachavecandidataseK formínimo
Exemplo:{nome_cliente}é umachavecandidataparaCliente,já queelaé
umasuperchave (considerandoquenenhumclientepodeteromesmonome
deoutrocliente),enenhumdeseussubconjuntosé umasuperchave.
• Chaveprimária
• Achaveprimáriadeveserescolhidademodoqueseusvaloresdeatributo,
nunca,ouraramente,sejammodificados:eg endereço;
• Umesquemaderelação,digamosr1,podeincluirentreseusatributosachave
primáriadeoutroesquemaderelação,digamosr2.Esseatributoéchamado
dechaveestrangeirader1,referenciandor2
SistemadeBancodeDados,5/E
Diagramadeesquemaparaa
instituiçãobancária
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
Diagramadeesquemaparaa
instituiçãobancária
• Oesquemadebancodedados,juntamentecomachaveprimáriae
as dependências da chave estrangeira, pode ser representado
graficamentepelosdiagramasdeesquemas;
• A figura anterior, mostra o diagrama de esquema para uma
instituiçãofinanceira;
• Cada relação aparece como uma caixa, com os atributos ligados
dentroeonomedarelaçãoemcima.
• Se houver atributos de chave primária, uma linha horizontal
atravessaacaixa,comosatributosdechaveprimárialistadosacima
dalinhaemcinza;
• As dependências de chave estrangeira aparecem como setas indo
dos atributos de chave estrangeira da relação referenciadora até a
chaveprimáriadarelaçãoreferenciada
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Linguagensdeconsulta
� Linguagememqueumusuáriorequisitainformaçõesdobancode
dados.
� Categoriasdelinguagens
� Procedural
� Nãoprocedural,oudeclarativa
� Linguagens“puras”:
� Álgebrarelacional
� Cálculorelacionaldetupla
� Cálculorelacionaldedomínio
� Linguagenspurasformambasedaslinguagensdeconsultaqueas
pessoasusam.
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Álgebrarelacional
� Linguagemprocedural
� Seisoperadoresbásicos
� seleção:σ
� projeção:∏
� união:∪
� diferençadeconjuntos:–
� produtocartesiano:x
� renomeação:ρ
� Osoperadoresusamumaouduasrelaçõescomoentradaeproduzem
umanovarelaçãocomoresultado.
SistemadeBancodeDados,5/E
seleção:σσσσ
• A operação seleção seleciona tupla que
satisfazemumdeterminadopredicado;
• Usa-se a letra grega sigma para denotar a
seleção;
• Opredicadoaparece comoumsubscrito de
sigma;
• A relação de argumento está entre
parêntesesapósosigma;
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãoselect
� Notação:σσσσ p(r)
� p é chamadoopredicadodeseleção
– Onde p é umafórmulaemcálculoproposicionalconsistindoem
termos conectadospor:∧∧∧∧ (and),∨∨∨∨ (or),¬¬¬¬ (not)
Cadatermo podeser:
– <atributo> op <atributo>ou<constante>
– ondeop podeser:=,≠≠≠≠,>,≥≥≥≥.<.≤≤≤≤
� Exemplodeseleção:
σσσσ nome_agência=“Perryridge”(conta)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.6:Arelaçãoempréstimo
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.9:Resultadodeσσσσ nome_agência
=“Perryridge” (empréstimo)
SistemadeBancodeDados,5/E
Projeção:∏∏∏∏
• Suponhaquesedesejalistartodososnúmerosde
empréstimoeaquantiadosempréstimos,masonome
daagencianãoimporta;
• Aoperaçãoprojeçãoé umaoperaçãoqueretornasua
relaçãodeargumento,comcertosatributosomitidos;
• Comoarelaçãoé umconjunto,quaisquerlinhas
duplicadassãoeliminadas;
• Aprojeçãoé indicadapelaletragregapi;
• Listamososatributosquedesejamosqueapareçamno
resultadocomosubscritodePI;
• Arelaçãodeargumentosegueentre parênteses;
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãoprojeção:∏∏∏∏
� Notação:
Π A1,A2,...,Ak(r)
– ondeA1,A2 sãonomesdeatributoer é umnomerelacional.
� Oresultadoé definidocomoarelaçãodek colunasobtidas
excluindo-seascolunasquenãoestãolistadas
� Linhasduplicadassãoremovidasdoresultado,demodoqueas
relaçõessejamconjuntos
� Exemplo:Paraeliminaroatributonome_agência deconta
∏número_conta,saldo (conta)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãoprojeção– Exemplo
� Relaçãor:
• ∏∏∏∏A,C (r)
A B C
α
α
β
β
10
20
30
40
1
1
1
2
A C
α
α
β
β
1
1
1
2
=
A C
α
β
β
1
1
2
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.10:Númeroequantia
doempréstimo: ∏∏∏∏número_emprestimo,
quantia(Emprestimo)
SistemadeBancodeDados,5/E
Operaçãounião
• Considereumaconsultaparaencontraros
nomesdetodososclientesdobancoque
possuemumacontaouumempréstimo,ou
ambos;
• Observequearelaçãoclientenãocontéma
informação,já queumclientenãoprecisater
nemumacontanemempréstimonobanco;
• Pararesponderaessaconsulta,precisamos
dasinformaçõesnarelaçãodepositante(fig
2.5)enarelaçãotomador(fig 2.7);
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãounião
� Notação:r ∪ s
� Paraquer ∪ s sejaválido:
– 1.r es precisamserdamesmaaridade (omesmonúmerode
atributos)
– 2.Osdomíniosdeatributoprecisamsercompatíveis(exemplo:2a
colunader lidacomomesmotipodevaloresquea2a colunades)
� Exemplo:encontrartodososclientescomumacontaouum
empréstimo
∏nome_cliente (depositante)∪ ∏nome_cliente (tomador)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãounião– Exemplo
• Relaçõesr,s:
• r∪∪∪∪ s
A B
α
α
β
1
2
1
A B
α
β
2
3
r
s
A B
α
α
β
β
1
2
1
3
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.11:Nomesdetodososclientesque
têmumempréstimoouumaconta :
∏∏∏∏nome_cliente (depositante)∪∪∪∪ ∏∏∏∏nome_cliente (tomador)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Fig 2.5:Arelaçãodepositante
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.7:Arelaçãotomadorde
emprestimo
SistemadeBancodeDados,5/E
Operaçãodiferença-
• AoperaçãoDiferençadeconjuntos,indicada
por-,permiteencontrartuplas queestejam
emumarelação,masnãoemoutra;
• Aexpressãor-sproduzumarelação
contendoastuplas queestãoemrmasnão
ems.
• Podemosencontrartodososclientesdo
bancoquepossuemumacontamasnãoum
empréstimosescrevendo
• ∏nome_cliente (depositante)- ∏nome_cliente (tomador)
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.12:Clientescomumaconta,mas
semempréstimos
∏∏∏∏nome_cliente (depositante)- ∏∏∏∏nome_cliente (tomador)
SistemadeBancodeDados,5/E
Operaçãodiferença
• Assim como a operação união, é preciso
garantirqueasdiferençasdeconjuntosejam
tomadasentrerelaçõescompatíveis;
• Portanto, para uma operação diferença de
conjuntosr-sserválida;
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãodiferençadeconjuntos–
Exemplo
� Relaçõesr,s:
� r– s
A B
α
α
β
1
2
1
A B
α
β
2
3
r
s
A B
α
β
1
1
SistemadeBancodeDados,5/E
OperaçãoProdutoCartesianox
• Aoperaçãoprodutocartesiano, indicadaporumsinalde
vezes (x), permite combinar informações de quaisquer
duasrelações;
• Escrevemos o produto cartesianos das relações r1 e r2
comor1xr2;
• Lembrando, que uma relação, é por definição, um
subconjuntodeumprodutocartesianodeumconjuntode
domínio;
• Apartirdessadefinição,já devemosterumaideia sobrea
definiçãodaoperaçãoprodutocartesiano;
• Entretanto,comoonomedeatributopodeaparecertanto
rm r1quantor2,deve-secriarumesquemadenomeação
paradistinguiressesatributos
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãoprodutocartesiano– Exemplo
• RelaRelaRelaRelaçççções ões ões ões rrrr, , , , ssss
• rrrr ×××× ssss A B
α
α
α
α
β
β
β
β
1
1
1
1
2
2
2
2
C D
α
β
β
γ
α
β
β
γ
10
10
20
10
10
10
20
10
E
a
a
b
b
a
a
b
b
A B
α
β
1
2
C D
α
β
β
γ
10
10
20
10
E
a
a
b
br
s
SistemadeBancodeDados,5/E
OperaçãoProdutoCartesianox
• Então,fazemosissoanexandoaumatributoonomedarelaçãoda
qualoatributooriginalmenteveio;• Porexemplo,oesquemaderelaçãoparar=tomadorxempréstimo
é apresentadonatabelaaseguir:
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.13:Resultadodetomador ×××× empréstimo
SistemadeBancodeDados,5/E
OperaçãoProdutoCartesianox
• Entãooesquemadarelaçãor=tomadorxemprestimo é:
(tomador.nome_cliente, tomador.numero_emprestimo,
emprestimo.numero_emprestimo,
emprestimo.nome_agencia,emprestimo.quantia)
• Com esse esquema, é possível distinguir
tomador.numero_emprestimo de
emprestimo.numero_emprestimo;
• Para atributos que aparecem apenas em um dos dois
esquemas, normalmente omites-e o prefixo
nome_relação
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
OperaçãoProdutoCartesianox
• Outro exemplo: suponha que desejamos encontrar os
nomesdetodososclientesquepossuemumempréstimo
naagenciaPerryridge;
• Para isso, são necessárias as informações na relação
empréstimoenarelaçãotomador,então:
• σ nome_agência=“Perryridge”(tomadorxemprestimo)
• Oresultadoé arelaçãoapresentadanopróximoslide;
• Temos uma relação que pertence apenas a agencia
Perryridge
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.14
SistemadeBancodeDados,5/E
Operaçãointerseçãodeconjuntos
• Ainterseçãodeconjuntospodemosdefinircomooseguinteexemplo:
Suponhaquedesejamosencontrartodososclientesquepossuemum
empréstimoeumaconta;
• Usandoumainterseçãodeconjuntos,podemosescrever:
• ∏nome_cliente (tomador)∩∩∩∩ ∏nome_cliente (depositante)
• Observe que podemos reescrever qualquer expressão de álgebra
relacional que usa interseção de conjuntos substituindo a operação
interseçãoporumpardeoperaçõesdediferençadeconjuntoscomo:
� � ∩���������
• Portanto, a interseção de conjuntos não é umaoperação fundamental,
apenas uma combinação de comandos estudados anteriores e é mais
conveniente;
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãointerseçãodeconjuntos
� Notação:r ∩∩∩∩ s
� Nota:r ∩∩∩∩ s =r – (r – s)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Figura2.19:Clientescomumaconta
eumempréstimonobanco
∏∏∏∏nome_cliente (tomador)∩∩∩∩ ∏∏∏∏nome_cliente (depositante)
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Operaçãointerseçãodeconjuntos– Exemplo
� Relaçãor,s:
� r ∩∩∩∩ s
AB
α
α
β
1
2
1
AB
α
β
2
3
r s
AB
α 2
SistemadeBancodeDados,5/E
Exercícios
© Korth • Silberschatz • Sundarshan
SistemadeBancodeDados,5/E
© Korth • Silberschatz • Sundarshan
Exemplodebanking
– agência(nome_agência,cidade_agência,ativo)
– cliente(nome_cliente,rua_cliente,cidade_cliente)
– conta(número_conta,nome_agência,saldo)
– empréstimo(número_empréstimo,nome_agência,quantia)
– depositante(nome_cliente,número_conta)
– tomador (nome_cliente,número_empréstimo)
SistemadeBancodeDados,5/E
Exercicios
1. Encontre todos os empréstimos de mais de US$ 1200
2. Encontre os nomes de todos os clientes que têm um 
empréstimo, uma conta, ou ambos, do banco
3. Encontre os nomes de todos os clientes que têm um 
empréstimo e uma conta no banco
4. Encontre os nomes de todos os clientes que têm um 
empréstimo na agência Perryridge. 
5. Encontre os nomes de todos os clientes que têm um 
empréstimo na agência Perryridge mas não têm uma conta em 
qualquer agência do banco.
6. Encontre os nomes de todos os clientes que têm um 
empréstimo na agência Perryridge.
7. Encontreomaiorsaldodeconta
© Korth • Silberschatz • Sundarshan

Continue navegando