Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
28/4/2010
28/4/2010
Conceitos
Tabela = relao = conjunto de tuplas Cabealhos de colunas = atributos Em um bom projeto, nome fab Linha = tupla fab deve conter WinterBrew Petes apenas cdigos. Voc BudLite A.B. aprender por qu. Bomia Ambev Cerveja Esquema de relao = nome(atributos) + outras informaes estruturais, p.e., chaves e outras restries. Exemplo: Cerveja(nome, fab) Instncia de relao o conjunto corrente de linhas de um esquema de relao Esquema de BD Relacional = conjunto de esquemas de relao BD Relacional = conjunto de instncias de relao
28/4/2010 Especializao em Engenharia de Software da UECE - Disciplina: BD 3
A1 A2 A3 ... An
C a r d i n a l i d a d e
Atributos
a1 a2 a3
b1 b2 a3 a1 c3 b3 . . . x1 v2 d3 Grau
an
cn bn Tupla
Instncia
wn
28/4/2010
Domnio de Relao
Cardinalidade da relao
Domnios
N(nome) E(end) T(el)
<=5x3x7
N1 E1 T1
N1 E1 T2
N1
N2 N3 N4 N5
E1
E2 E3
T1
T2 T3 T4 T5 T6 T7
N1 E1 T3
. .
N1 E1 T7
N1 E2 T1
N1 E3 T1
N2 E1 T1
28/4/2010
Instncia de Relao
Nome Endereo Telefone
Joo Joo
Patrcia
555-1234 555-1235
555-1235
Henrique Salete
Salete Patrcia
555-2221 555-2221
555-2223
R. Secundria, 12 555-1235
lgebra Relacional
Os operandos das operaes so tabelas
PROJEO
X PRODUTO CARTESIANO DIFERENA
= JUNO NATURAL
U UNION INTERSEO
28/4/2010
Unio, Interseo, e Diferena. Como os operadores binrios da teoria dos conjuntos Seleo. Seleciona linhas de uma tabela (operao unria) Projeo. Seleciona instncias de colunas de uma tabela (operao unria) Produto e Juno: Associa duas (instncias de) tabelas -- no necessariamente diferentes -- de uma maneira bem definida (operao binria)
28/4/2010 Especializao em Engenharia de Software da UECE - Disciplina: BD 8
Fez_Emprstimo codFilial codCliente data 4 110 20/12/09 4 110 19/09/08 1 130 20/12/09 4 100 12/03/10
28/4/2010
Seleo:
condio (R)
Exemplo: Selecionar, da tabela Filial, somente as linhas das filiais Centro-1 e Subrbio-4, se existirem. Corresponde a perguntar D-me todas as informaes de certas filiais do banco
filial = Centro-1 filial=Subrbio-4 (Filial)
4 Subrbio-4
28/4/2010
10
Projeo:
Exemplo: Mostrar somente os valores da coluna filial da tabela Filial (Quais as filiais do banco?)
28/4/2010
11
Produto Cartesiano ( )
R
A B C D
S
E F G
A B C D E F G
28/4/2010
12
R2)
R.C e S.C devem ser compatveis (mesmo domnio) R.C e S.C poderiam ter nomes diferentes Exerccio: Qual seria a condio de R
28/4/2010 Especializao em Engenharia de Software da UECE - Disciplina: BD
S?
13
28/4/2010
14
Quais os nomes dos clientes que fizeram emprstimos na filial de no. 4? R1:= Cliente.codCliente = Emprstimo.codCliente(Cliente x Emprstimo) R2:= codFilial = 4(R1) Resultado:= cliente (R2)
Exerccio: Faa o teste de mesa, e comente o resultado
28/4/2010
15
Unio: (R
S)
Exige a compatibilidade de R e S: colunas respectivas com mesmos domnio e semntica Em geral, a operao Unio feita sobre tabelas intermedirias de programas
Interpretao visual: coloca S embaixo de R, salvo que no pode haver linhas repetidas (Por qu?) R = {R.linha1, , R.linhan} R S = {S.linha1, , S.linhap}
28/4/2010
16
Diferena: (R
S)
Exige a compatibilidade de R e S
Em geral, a operao Diferena feita sobre tabelas intermedirias de programas
R = {R.linha1, , R.linhan}
R
S = {S.linha1, , S.linhap}
28/4/2010
17
Interseo: (R
S)
Exige a compatibilidade de R e S
Em geral, a operao Interseo feita sobre tabelas intermedirias de programas
R = {R.linha1, , R.linhan}
R
S = {S.linha1, , S.linhap}
28/4/2010
18
Transformador
Exerccios
O esquema relacional o do slide 9 1-) Mostre, para cada filial, os emprstimos realizados. Obs: por questo de legibilidade, cdigos no devem ser exibidos 2-) Quais os emprstimos (data e valor) de Ana, na filial Subrbio-4? 3-) Mostre os emprstimos de Ana, se eles forem maiores do que pelo menos um dos emprstimos de Joo
28/4/2010 Especializao em Engenharia de Software da UECE - Disciplina: BD 20