Documente Academic
Documente Profesional
Documente Cultură
Modelo Relacional
Disciplina:
Disciplina: Banco de Dados I
Prof.:
Prof.: Carlos Eder
Os SGBDs relacionais
oferecem benefcios como:
ESTRUTURAS
OPERAES
REGRAS DE
INTEGRIDADE
Alguns comentrios...
O MODELO RELACIONAL NO
NORMALIZADO
Livros
Alguns comentrios...
ISBN
para os livros
Outra para os assuntos
E a terceira para os nomes dos autores
Ttulo
Assuntos*
NomesAutores*
1234
A Internet
Computadores
Redes
Jos
Joo
Maria
Pedro
4321
Casa e Fogo
Cozinha
Decorao
Arquitetura
Ney
1111
Artes
Marcelo
Geraldo
2222
Futebol
Esporte
Joaquim
Ttulo
1234
A Internet
4321
Casa e fogo
1111
A arte no sculo
XIX
2222
Futebol
AutoresLivros
Nome Autor
CodLivro
Assuntos
ISBN_Livro
Assunto
1234
Computadores
4321
Cozinha
1111
Artes
Jos
1234
2222
Esporte
Joo
1234
1234
Redes
Maria
1234
4321
Decorao
Ney
4321
4321
Arquitetura
Marcelo
1111
Geraldo
1111
Pedro
1234
Joaquim
2222
MRNN
No esquema as colunas multivaloradas so marcadas com
asterisco (*). Notamos que o esquema fica mais simples e claro, e
representa de uma maneira melhor a realidade: cada livro apenas
uma entidade, sendo representado por uma nica linha e no por
vrias em diferentes relaes.
Outro exemplo de modelagem que se beneficia das caractersticas
do MRNN o do cadastro de funcionrios ou clientes com atributos
multivalorados: alm de nome, endereo, data de nascimento, etc.,
queremos modelar o fato de um funcionrio poder possuir vrios
telefones e dominar vrias lnguas. Para representar esses dados
no MR, ser necessrio o uso de trs relaes: uma para
armazenar os atributos monovalorados, outra para os telefones, e
ainda outra para as lnguas.
Vamos utilizar o seguinte esquema:
Funcionrios (Chapa, Nome, Endereo, DataNascimento)
Lnguas (Chapa_Func, lngua, nvel)
Telefones (Chapa_Func, Telefone)
MRNN
Relaes
Funcionrios
RG
Nome
Endereo
DataNascimento
1234
Jos
Rua 1
01/01/70
1111
Maria
Rua X
01/05/60
4321
Joo
Rua 2
31/12/69
Telefones
Lnguas
Chapa_Func
Telefone
Chapa_Func
Lngua
Nvel
1234
555-5555
1234
Ingls
1111
707070
1234
Francs
4321
888-5555
1111
Portugus
1234
666-9999
1111
Alemo
4321
Italiano
Nome
Endereo
DataNascimento
Lnguas*
(Idioma, nvel)
Telefones*
1234
Jos
Rua 1
01/01/70
(Ingls, 1)
(Francs, 1)
555-5555
666-9999
1111
Maria
Rua X
01/05/60
(Portugus, 4)
(Alemo, 3)
707070
4321
Joo
Rua 2
31/12/69
(Italiano, 2)
888-5555
Tabela DEPENDENTES
RG Responsvel
(FK)
Nome Dependente
(PK)
Dt. Nascimento
Relao
Sexo
10101010
Jorge
27/12/86
Filho
Masculino
10101010
Luiz
18/11/79
Filho
Masculino
20202020
Fernanda
14/02/69
Conjuge
Feminino
20202020
Osvaldo
10/02/95
Filho
Masculino
30303030
Fernanda
01/05/90
Filho
Feminino
Quando uma relao possui mais que uma chave (no confundir
com chave composta) como por exemplo RG e CPF para
empregados cada uma destas chaves so chamadas de chaves
candidatas. Uma destas chaves candidatas deve ser escolhida
como chave primria.
Uma chave estrangeira (FK) de uma tabela R1 em R2, ou viceversa, especifica um relacionamento entre as tabelas R1 e R2.
Nmero
RG Gerente
Contabilidade
10101010
Engenharia Civil
30303030
Engenharia Mecnica
20202020
Informaes em um
Banco de Dados
Tabela EMPREGADO
Nome
RG
CPF
Depto.
RG Supervisor
Salrio
Joo Luiz
10101010
11111111
NULO
3.000,00
Fernando
20202020
22222222
10101010
2.500,00
Ricardo
30303030
33333333
10101010
2.300,00
Jorge
40404040
44444444
20202020
4.200,00
Renato
50505050
55555555
20202020
1.300,00
Manipulao de dados
Recuperao da informao armazenada;
Insero de novas informaes;
Excluso de informaes;
Modificaes de dados armazenados;
Modelo Relacional
Usurio
Login = Hudson
Senha = senha
Login = Hudson
igual a
e-mail = x@x.x
Senha = senha
e-mail = x@x.x
Entidades
Modelo Relacional
Modelo Relacional
Usurio
Login = Hudson
Senha = senha
igual a
e-mail = x@x.x
Propriedades
Login = Hudson
Login = Hudson
Senha = senha
Senha = senha
e-mail = x@x.x
e-mail = x@x.x
Usurio
Login = Hudson
igual a
Senha = senha
e-mail = x@x.x
Relacionamento
Modelo Relacional
Modelo Relacional
Relacionamentos
Modelo Relacional
Modelo Relacional
Identificao de entidades
Modelo Relacional
Identificao de propriedades
Modelo Relacional
Tipo dos dados
Restrio
Modelo Relacional
Modelo Relacional
Relacionamentos
Modelo Relacional
Restrio
Modelo Relacional
Tipos de relacionamentos:
1
para 1
1
para N
N
para N
Um usurio pode ser de vrios tipos. E cada tipo
pode ter vrios usurios associados a ele
Modelo Relacional
Modelo Relacional
1 para N
N para N
Modelo Relacional
A maior parte dos sistemas de informtica
atuais utilizam o modelo relacional como
forma de armazenamento;
um modelo com dcadas de
maturidade;
NORMALIZAO
NORMALIZAO
o processo de organizao eficiente dos
dados dentro de um banco de dados, com
a aplicao de uma srie de regras sobre
as tabelas para verificar se estas esto
corretamente projetadas.
O processo de normalizao tem dois
objetivos principais:
NORMALIZAO
Eliminar
dados redundantes.
misturar assuntos em uma mesma
tabela.
No
NORMALIZAO
Observaes - Primeira
Forma Normal
Aps a 1FN:
Aps a 2FN:
itempedido (num_pedido, cod_produto,
quant_produto, total_produto)
Observaes Segunda
Forma Normal
Observaes Terceira
Forma Normal
Aps 3FN:
Algumas Linguagens
Relacionais
LISP
OPAL
QBE
Quel
Datalog
OUTRAS LINGUAGENS
RELACIONAIS
LISP
Possui extenses semelhantes a SQL
Exemplos:
select Al nome, nota from Matricula
where: Disc Nome = MAC-110 and:
SemAno = 1/95
OPAL
QBE (Query-by-Example)
Datalog
Quel
Tem por base o clculo relacional de
tuplas.
Como a SQL, a QBE e a Quel contm
muitos outros recursos alm da consulta
ao banco de dados. Esses recursos
incluem meios para a definio da
estrutura dos dados, para a modificao
dos dados no banco de dados e para a
especificao de regras de segurana.