Você está na página 1de 39

Banco de Dados

Aula 009

Reviso

Terminologia estrutural
Termo relacional formal

Equivalentes informais

Relao

Tabela

Tupla

Linha ou registro

Cardinalidade

Nmero de linhas

Atributo

Coluna ou campo

Grau

Nmero de colunas

Chave primria

Identificador exclusivo

Domnio

Conjunto de valores vlidos

Domnios
Um domnio D um conjunto de valores atmicos, sendo que por atmico,
podemos compreender que cada valor do domnio indivisvel. Durante a
especificao do domnio importante destacar o tipo, o tamanho e a faixa
do atributo que est sendo especificado. Por exemplo:

Coluna

Tipo

Tamanho

Faixa

RG

Numrico

10,0

03000000-25999999

Nome

Caracter

30

a-z, A-Z

Salrio

Numrico

6,2

100,00-1299,99

Chave
Uma relao definida como um conjunto de tuplas.
Todos os elementos de um conjunto so distintos.
Isto significa que nenhuma tupla pode ter a mesma combinao
de valores para todos os seus atributos

Curso
CURSOID

TITULO

DURAO

001

Informtica Indust.

002

Biologia

003

Engenharia Civil

004

Licenciatura Mat.

Super chave
Um ou mais atributos que permitem identificar cada registro da tabela
como nico.

Chave candidata
Corresponde a super-chave mnima, ou seja no existe sub-conjunto da
super-chave.
{CPF}
{nome}

Chave primria
Coluna ou combinao de colunas cujos valores distinguem uma linha
das demais dentro de uma tabela.
{CPF}
{codigo_cliente}

chave primria
PROPRIETARIO
CPF

NOME

RUA

08940256

JOO DA SILVA

SAO JOAO

03727298
97260089

NUMERO

BAIRRO

180

CENTRO

HENRIQUE CARDOSO IMIGRANTE

1700

VILA 12

JOS DE SOUZA

35

CENTRO

SAO JOAO

chave primria composta


RUA
TRECHO

NUM_INICIAL

SAO JOAO

TRC01

180

CENTRO

SAO JOAO

TRC02

190

1700

CENTRO

IMIGRANTES

TRC01

500

VILA 1

RUA

NUM_FINAL

BAIRRO

Chave Estrangeira
Coluna ou combinao de colunas, cujos valores
necessariamente na chave primria de uma outra tabela.

aparecem

Mecanismo que permite a implementao de relacionamentos em um


banco de dados relacional.
Uma chave estrangeira no precisa ser uma chave primria na sua
relao.
Uma chave estrangeira no precisa ter o mesmo nome que a chave
primria correspondente na outra tabela (apenas o mesmo domnio).

Chave Estrangeira
Curso

relacionamento
Aluno

CURSOID

TITULO

DURAO

001

Informtica Indust.

002

Biologia

003

Engenharia Civil

004

Licenciatura Mat.

MATRICULA

NOME

CURSO

98765

Joo

004

67765

Jos

002

84562

Maria

003

34256

Luis

001

3452672

Ana

004

34529

Luana

004

Obs.: Atravs do relacionamento,


evitamos a repetio de
informaes.

Chave Estrangeira
Chave estrangeira impe restries que devem ser garantidas ao serem
executadas no BD:
Incluso de uma linha na tabela que contm a chave estrangeira
Garantir que o valor da chave estrangeira exista na chave
primria da outra tabela.

Alterao do valor da chave estrangeira


O novo valor deve aparecer na coluna da chave primria
referenciada.

Chave Estrangeira
Excluso de uma linha da tabela que contm a chave primria
referenciada por uma chave estrangeira.
No se exclui a linha caso exista um valor na tabela com a
chave estrangeira.
Remove-se tambm a linha com o valor de chave estrangeira.
Valor da chave estrangeira ajustado como NULL.

Alterao do valor da chave primria referenciada por alguma chave


estrangeira S
Propagar a modificao.
No deixar que seja feita a modificao.

Restries de Integridade
Uma das funcionalidades bsicas que todo SGBD deve oferecer.
uma regra de consistncia de dados que garantida pelo SGBD.
Tipos de Restries.
Restrio de domnio.

{ x | x -5 e x 5 }

Integridade de chave.

Chaves candidatas devem possuir valor nico em todas


as tuplas da relao.

Integridade da Entidade.

Nenhum valor da chave-primria pode ser nulo.

Integridade Referencial.

Estabelece que uma tupla de uma relao que se refere


outra relao, deve se referir a uma tupla existente
naquela relao. (Chave estrangeira).

Esquema de Restries de Integridade Referencial

Relacionamento
Representa a associao entre os elementos do conjunto de uma
entidade com outra entidade.

EMPREGADO

TRABALHA
PARA

DEPARTAMENTO

Relacionamento e Cardinalidade
Relacionamento 1:1
Obrigatrio em ambos os sentidos

Possvel soluo:

Relacionamento e Cardinalidade
Relacionamento 1:1
Opcional em ambos os sentidos

Possveis solues:

Relacionamento e Cardinalidade
Relacionamento 1:1
Opcional em um dos sentidos

Possveis solues:

Relacionamento e Cardinalidade
Relacionamento 1:N
Obrigatrio / Opcional no lado N

Possvel soluo:

Relacionamento e Cardinalidade
Relacionamento 1:N
Opcional no lado 1

Possveis solues:

Relacionamento e Cardinalidade
Relacionamento N:M
Obrigatrio / Opcional em ambos os sentidos

Possvel soluo:

Relacionamento e Cardinalidade
Auto Relacionamento
Valem as mesmas recomendaes anteriores

Possveis solues:

Relacionamento e Cardinalidade
Relacionamento com Entidades Associativas
Valem as mesmas recomendaes anteriores. A questo :
Localizar a Entidade Associativa
Emprstimos
(0,N)
Livros

(0,N)
emprstimo

Clientes

DataDevoluo

(0,N)
cadastro

Outra soluo:

(1,1)

Bibliotecria
s

Relacionamento e Cardinalidade
Relacionamento com Entidades Associativas
Valem as mesmas recomendaes anteriores. A questo :
Localizar a Entidade Associativa
Correntistas
(1,N)
Clientes

(1,N)
vinculo

Contas

RG

numero

(1,1)
concessao

Outra soluo:

(0,1)

CartoesMagnetic
os
numero dataexpedicao

Relacionamento e Cardinalidade
Relacionamento Ternrio
Caso N:N:N
Instituicoe
s

Projetos
(0,N)

(1,N)

sigla

numero

vinculo

(1,N)

Pesquisadores

Possvel soluo:
RG

Relacionamento e Cardinalidade
Relacionamento Ternrio
Caso 1:N:N
Produtos

Cidades
(0,N)

(0,N)

codigo

codigo

distribuicao

(0,1)

Possvel soluo:

Distribuidores

RG

Relacionamento e Cardinalidade
Relacionamento Ternrio
Caso 1:1:N
Correspondencia
s

Bairros
(1,1)

(0,N)

codigo

codigo

peso

entrega

(1,1)

Carteiros

Possvel soluo:
RG

Relacionamento e Cardinalidade
Relacionamento Ternrio
Caso 1:1:1
Paineis

Motores
(1,1)

(1,1)
codigo

codigo

peso

fabricante

veiculo

(1,1)

Latarias

Possvel soluo:
codigo

modelo

Esquema para o Mapeamento Relacional


O mapeamento do Modelo Entidade Relacionamento para o Modelo
Relacional segue oito passos bsicos:

Para cada entidade E no modelo ER criada uma tabela T1


no Modelo Relacional que inclua todos os atributos simples
de E;
Para cada atributo composto, so inseridos apenas os
componentes simples de cada um;
Um dos atributos chaves de E deve ser escolhido como a
chave primria de T1;

Para cada entidade fraca EF com entidade proprietria E no modelo


ER, criada uma tabela T1 no Modelo Relacional incluindo todos os
atributos simples de EF;
Para cada atributo composto, so inseridos apenas os componentes
simples de cada um;
A chave primria desta relao T1 ser composta pela chave parcial
da entidade fraca EF mais a chave primria da entidade proprietria E;

Para cada relacionamento regular com


cardinalidade 1:1 entre entidades E1 e E2
que geraram as tabelas T1 e T2
respectivamente, devemos escolher a chave
primria de uma das relaes (T1, T2) e
inseri-la como chave estrangeira na outra
relao;
Se um dos lados do relacionamento tiver
participao total e outro parcial, ento
interessante que a chave do lado com
participao parcial seja inserido como chave
estrangeira no lado que tem participao
total;

Para cada relacionamento regular com cardinalidade 1:N


entre entidades E1 e E2 respectivamente e que geraram as
tabelas T1 e T2 respectivamente, deve-se inserir a chave
primria de T1 como chave estrangeira em T2;

Para cada relacionamento regular com cardinalidade N:N entre


entidades E1 e E2, cria-se uma nova tabela T1, contendo todos
os atributos do relacionamento mais o atributo chave de E1 e o
atributo chave de E2; a chave primria de T1 ser composta
pelos atributos chave de E1 e E2;

Para cada atributo multivalorado A1, cria-se uma tabela T1,


contendo o atributo multivalorado A1, mais o atributo chave C
da tabela que representa a entidade ou relacionamento que
contm A1; a chave primria de T1 ser composta por A1 mais
C; se A1 for composto, ento a tabela T1 dever conter todos os
atributos de A1;

Para cada relacionamento n-rio, n > 2, cria-se uma tabela T1,


contendo todos os atributos do relacionamento; a chave primria de
T1 ser composta pelos atributos chaves das entidades
participantes do relacionamento;

8 Generalizao e Especializao

8 Generalizao e Especializao

8 Generalizao e Especializao

8 Generalizao e Especializao

Você também pode gostar