Buscar

Banco de Dados - ModeloRelacional

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 46 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 46 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 46 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

Modelo Relacional
Modelagem de Dados
Modelo Relacional
Introduzido por Edgar Codd (1970)‏
Baseado na Teoria dos conjuntos
Primeiro modelo de dados para aplicações comerciais
Teve sua grande aceitação comercial a partir de meados da década de 1980
Modelo Relacional
Na teoria, representa o BD como uma coleção de relações
Modelo Relacional
Formalmente, usa as terminologias:
Relações
Atributos
Tuplas
ALUNO
Nome da Relação
Atributos
Tuplas
Modelo Relacional
Na prática:
Relações => Tabelas
Atributos => Cabeçalhos de Coluna, Campos
Tuplas => Linhas, Instâncias
ALUNO
Nome da Relação
Atributos
Tuplas
Modelo Relacional
Na prática, representa o BD como uma coleção de tabelas
Tabela Disciplina
ALUNO_DISCIPLINA
ALUNO
DISCIPLINA
Tabela Aluno
Tabela Aluno_Disciplina
Para cada atributo (nome de campo) de uma tabela, há um conjunto de valores permitidos (domínio)‏
Exemplos:
idade_funcionário > 15 e < 80
titulação_professor = {graduado, mestre, doutor} 
nota_aluno >= 0 e <= 10 
Um tipo de dado ou formato é especificado para cada domínio
Exemplos:
O tipo de dado para idade_funcionário é um número inteiro entre 15 e 80
O tipo de dado para nome_aluno é uma string de máximo sessenta caracteres
Domínio de uma Relação
Esquema da Relação
Descreve as colunas da tabela
Especifica
nome da relação
o nome de cada campo (coluna ou atributo)‏
o tipo de cada campo
chaves
Exemplos: disciplina( id, nome, carga_horaria, descricao)‏
			 aluno( id, nome, idade, telefone)‏
			 aluno( id: integer, nome: string, idade: integer, 			 telefone: string)‏
			
Relação
Uma relação é um conjunto de tuplas únicas
Não existem duas linhas iguais
Chave
A ordem de apresentação das linhas não é importante
Tuplas que representam a mesma relação
Tabela Cliente
Tabela Cliente
Cada tabela de um BD tem um nome único
Tabela Disciplina
Tabela Aluno
Tabela Aluno_Disciplina
Chave de uma Relação
Chave de uma relação R
identifica de forma única as tuplas de R
conjunto mínimo de atributos de R tal que não existam 2 tuplas distintas de R com valores iguais nesses atributos
Tabela Cliente
Chaves
Chave de uma Relação
Uma relação pode ter várias chaves candidatas
Uma relação pode ter mais de um atributo como identificador único. Um deles é escolhido como chave primária e os outros são chaves candidatas
Tabela Cliente
Chave primária
Chave candidata
Modelo Relacional
Mapeamento 
ER - Relacional
Baseada nas notas de aula de Mapeamento ER - Relacional. Professor Marcos Cardoso.
E-R / Relacional
Um esquema relacional pode ser facilmente derivado de um esquema conceitual desenvolvido usando o modelo E-R
Seja o exemplo de modelagem E-R a seguir
E-R / Relacional
Passo 1
	Para cada Entidade Regular E no esquema ER, criar uma relação R que inclui todos os atributos de R.
Empregado
Passo 2:
	Para cada Entidade Fraca W no esquema E-R que tenha como entidade proprietária E,
criar uma relação R e incluir todos os atributos de W como atributos de R,
incluir o(s) atributo(s) chave primária da relação proprietária E
	
		A chave primária de R é a combinação da chave primária de E e da chave parcial de W
E-R / Relacional
Dependente
E-R / Relacional
Passo 3:
	Para cada Relacionamento R de 1:1 no esquema ER,
identificar as relações das entidades participando do relacionamento R,
escolher uma das relações e incluir como chave estrangeira, a chave primária da outra relação,
incluir todos os atributos do relacionamento na relação escolhida
Departamento
E-R / Relacional
Passo 4:
	Para cada Relacionamento R de 1:N no esquema ER,
identificar a relação S que representa a entidade do lado N,
incluir como chave estrangeira a chave primária da relação que representa a entidade do lado 1,
incluir os atributos do relacionamento em S.
Empregado
E-R / Relacional
Passo 5:
	Para cada Relacionamento R de N:M no esquema ER,
criar uma nova relação para representar R,
incluir como chave estrangeira as chaves primárias das relações que participam em R, estas chaves combinadas formarão a chave primária da relação,
incluir também eventuais atributos de R.
Trabalha_em
E-R / Relacional
Passo 6:
	Para cada Atributo Multivalorado A, criar uma nova relação R, incluindo um atributo correspondendo a A mais a chave primária K da relação que tem A como atributo.
		A chave primária de R é a combinação de A e K.
Locais
Esquema Relacional
Dependente
Departamento
Empregado
 Locais
Trabalha_em
Projeto
Exercícios
Faça o mapeamento do modelo ER para Relacional
	a) Escola
	
Disciplina
Aluno
Mat
Locais
Fones
Nome
Cod
Nome
data
cursa
N
M
Exercícios
	b) Companhia aérea
Exercícios
	c) Clínica Médica
Cenas dos próximos capítulos...
Aprender como se mapeia 
Relacionamento Ternário
Atributos compostos
Herança
E mais exercícios... 
Mapeamento 
ER - Relacional
Mapeamento 
ER - Relacional
30
E-R / Relacional
Vimos na aula passada que um Esquema Relacional pode ser facilmente derivado de um Esquema Conceitual desenvolvido usando o Modelo E-R
31
Modelo E-R
32
Esquema Relacional
Dependente
Departamento
Empregado
 Locais
Trabalha_em
Projeto
33
E-R / Relacional
Vimos também, que para efetuar o mapeamento, devemos seguir um conjunto de regras levando em conta características específicas como força de uma Entidade, cardinalidade de um Relacionamento e tipo do Atributo. 
Entidade Regular
Entidade Fraca
Relacionamento 1:1
Relacionamento 1:N
Relacionamento N:M
Atributo Multivalorado
34
34
E-R / Relacional
Na aula de hoje veremos como mapear 
Relacionamento Ternário
Atributo Composto
Herança
35
E-R / Relacional
Passo 7:
	Para cada Relacionamento n-ário R (n > 2),
criar uma nova relação S para representar R,
incluir como chaves estrangeiras as chaves primárias das relações que representam as entidades participantes,
incluir os eventuais atributos de R 
		A chave primária de S é normalmente a combinação das chaves estrangeiras.
36
E-R / Relacional
CAC
Exemplo: 
	
CAC
Cliente
1
N
Conta
Agencia
N
37
E-R / Relacional
Passo 8:
	Para cada Atributo Composto C no esquema E-R que tenha como entidade proprietária E,
Incluir todos atributos pertencentes a C como atributos da relação R, criada para representar E
38
E-R / Relacional
Pessoa
Exemplo: 	
Pessoa
nome
primeiro nome
último nome
nome do meio
cod
sexo
telefone
39
E-R / Relacional
Passo 9:
	a)	Para cada Entidade Regular G de nível superior que inclui Generalização no esquema ER 
criar uma relação R que inclui todos os atributos de R.
	
	b)	Para cada Entidade Regular E de nível inferior que inclui Especialização no esquema ER 
criar uma nova relação S para representar E,
incluir os atributos de S 
	A chave primária da entidade de nível superior se torna atributo de chave primária de cada entidade de nível inferior. 
	Além disso, a chave primária da entidade de nível superior se torna atributo de chave estrangeira de cada entidade de nível inferior. 
40
Herança
Exemplo: 	
Pessoa_Fisica
Cliente
Pessoa_Juridica
41
cc limite
cp taxa j
41
Exercícios
Faça o mapeamento do modelo ER para Relacional
	a) Oficina
	
oferece
Oficina
N
M
Funcionário
Curso
1
horário
nome
nome
nome
num
cod
mat
42
Exercícios
Faça o mapeamento do modelo ER para Relacional
	b) Loja
	
Cliente
endereco
rua
cidade
bairro
matricula
idade
telefone
data_nascimento
cep
43
Exercícios
Faça o mapeamento do modelo ER para Relacional
	c) Agência Bancária
	
44
Cenas dos próximos capítulos...
Mais exercícios...‏‏
Normalização de BDs
Consultas em BDs
 A Linguagem SQL
Conexão entre um programa 
e um SGBD
45
Mapeamento 
ER - Relacional
46

Continue navegando