Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba Tecnólogo em Análise e Desenvolvimento de Sistemas 1 0 Semestre de 2013. Banco de Dados I – BD I Prof. Lineu Mialaret Aula 9: Mapeamento MER – Modelo Relacional. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Um Banco de Dados em conformidade com o Modelo Entidade Relacionamento - MER pode ser representado por uma coleção de tabelas no Modelo Lógico Relacional ou Modelo Relacional.
Para cada conjunto de entidades (e dependendo do tipo de conjunto de relacionamentos) há, internamente no Banco de Dados Relacional, em princípio uma tabela única, registrando o nome do conjunto de entidades (ou relacionamentos) correspondente.
Tanto o MER quanto o Modelo Relacional são abstratos, ou seja, são representações abstratas e lógicas de domínios de conhecimento, os quais podem representar empresas reais.
Como esses dois modelos empregam princípios similares, pode-se converter, de maneira adequada, o Modelo Entidade Relacionamento - MER num Modelo Relacional.
Em ferramentas CASE robustas, esse mapeamento é realizado de forma transparente ao usuário.
Entidade: algo relativo a um domínio de conhecimento (problema) a ser tratado e sobre a qual há um interesse em armazenar e manipular dados e informação.
Relacionamento: ligação semântica entre entidades.
Atributo: propriedade de uma entidade (em certos casos também de um relacionamento).
Grafo de Ocorrências ou Cardinalidade O grafo de ocorrências ou cardinalidade exemplifica os relacionamentos que ocorrem entre as entidades de conjuntos de entidades. A associação que ocorre entre conjuntos de entidades é definida como uma participação, a qual pode ser obrigatória ou opcional.
Professor Ensina Disciplina
P1 •P2 •P3 •P4 •
• D1• D2• D3• D4
Participação obrigatória
Participação opcional
Notação Chen usada para se referir a participação.
É necessária apenas uma tabela. A chave primária dessa tabela pode ser a chave primária de
qualquer uma das entidades envolvidas no relacionamento.
Solução 2: São necessárias duas tabelas, cada uma representando uma
entidade, e a chave primária de cada uma das tabelas se torna a chave estrangeira (foreign key) da outra tabela. (Isto implica que há uma navegação bidirecional. Pode ser usada uma solução que implique numa navegação parcial)
Relacionamento Binário 1:1 e Participação Obrigatória de Ambas as Entidades
Mapeamento: São necessárias duas tabelas, uma para cada entidade.
A chave primária de cada entidade serve de chave primária na tabela correspondente.
A chave primária da entidade com participação não obrigatória é usada como atributo (chave estrangeira) na tabela correspondente à entidade cuja participação é obrigatória.
Relacionamento Binário 1:1 e Participação Obrigatória de apenas uma das Entidades
Surgem valores nulos (Null) quer para as disciplinas que não têm professor, quer para os professores que não lecionam nenhuma disciplina. Não há como chavear a tabela.
Mapeamento: São necessárias três tabelas, uma para cada entidade e
uma terceira para o relacionamento.
A chave primária de cada entidade serve de chave primária na tabela correspondente.
A tabela relativa ao relacionamento terá de ter entre os seus atributos chaves (que compõem a chave primária da tabela) as chaves primárias de cada uma das entidades envolvidas no relacionamento.
Mapeamento: É necessária uma tabela para a entidade (ou relacionamento) e seus atributos que não são multivalorados.
Cria-se uma nova tabela R que inclui como atributos o atributo multivalorado A mais a chave primária K da tabela que representa a entidade (ou relacionamento) que tem A como atributo.
Mapeamento: É necessária uma tabela para a entidade (ou relacionamento) e
seus atributos que não são compostos. Se o atributo é composto, incluir seus componentes atômicos na tabela correspondente à entidade que possui esse atributo.
Para cada entidade fraca W relacionada com uma entidade forte E, cria-se uma tabela R e incluí-se todos os atributos simples de W como atributos de R.
Incluí-se como atributos da chave estrangeira de R os atributos que compõem a chave primária da entidade forte E.
A chave primária da tabela R é a combinação da chave primária da entidade forte E (que é chave estrangeira em W) e a chave parcial da entidade fraca W.
Usar de uma chave estrangeira recursiva (um atributo que referencia o atributo chave da própria tabela) na mesma tabela.
Para relacionamentos recursivos M:N - Criar duas tabelas, sendo uma para a entidade envolvida.
A outra tabela é usada para representar o relacionamento recursivo, sendo que sua chave primária possui dois atributos, ambos tomados da chave primária da entidade.
Mapeamento: É criada uma tabela para o supertipo e uma tabela para cada subtipo.
Os atributos do supertipo (incluindo as suas chaves) são mapeados para uma tabela correspondente.
os atributos dos subtipos são mapeados para tabelas correspondentes aos subtipos, e a chave primária do supertipo se torna chave primária (chave estrangeira) do subtipo.