Baixe o app para aproveitar ainda mais
Prévia do material em texto
MAPEAMENTO DO MODELO DE ENTIDADE RELACIONAMENTO PARA MODELO RELACIONAL Profa. Leticia Zoby MER para MR Modelo ER (nível conceitual) Projeto lógico de BD relacional Modelo relacional (nível lógico) Engenharia reversa de BD relacional Mapeamento MER para MR • Passos iniciais para o mapeamento • Tradução inicial de entidades e seus respectivos atributos • Tradução de relacionamentos e seus respectivos atributos • Regras gerais • Aplicáveis à maioria dos casos • Há situações por exigências da aplicação, outros mapeamentos são usados • Implementadas em ferramentas CASE • Objetivos básicos: • Boa performance • Simplificar o desenvolvimento Junção • Operação para buscar dados de diversas linhas associadas pela igualdade de campos • Exemplo: • buscar os dados de um empregado e os dados de seu departamento (duas tabelas diferentes) Chave e Índice • Implementação eficiente do controle de chaves: SGBD usa um índice • Índices tendem a ocupar espaço considerável em disco • Inserção e remoção de entradas em um índice • Podem exigir diversos acesso a disco Entidade • Para cada tipo de entidade E (não fraca) no esquema ER, cria-se uma tabela que inclui todos os atributos simples de E. • Para os atributos compostos, deve-se incluir somente os atributos simples componentes. • Deve-se selecionar os atributos chave de E como chave primária da tabela. Entidade Projeto nome número local NumProj<pk> Nome local Tabela Projeto Projeto (numProj, nome,local) EMPREGADO Empregado matr nome sexo ender. salário data nasc MatrEmp<pk> Nome Sexo End DtNasc Salario Tabela Empregado Tabela Empregado (matrEmp, nome,sexo, end, dtNasc, salario) Nomes de atributos e nomes de colunas • Não é aconselhável simplesmente transcrever os nomes de atributos para nomes de colunas • É aconselhável manter o nome de coluna curto • O nome da coluna não pode conter espaço em branco • É aconselhável manter o nome sem acento • É aconselhável os atributos chaves da tabela ter o seu nome composto pelo nome da tabela e o nome do próprio atributo. Entidade Fraca • Para cada tipo de entidade fraca W, no esquema ER, com uma entidade E que a identifica, cria-se uma tabela T e inclui-se todos os atributos simples da entidade fraca como colunas da tabela T. • Adicionalmente, inclui-se como atributos de chave estrangeira (FK) na tabela T os atributos de chave primária da entidade E. • A chave primária (PK) de tabela T é combinação da chave primária da entidade E com a chave parcial da entidade fraca W. Empregado mat r nome sex o ende r. salári o data nasc Dependente nom e data nasc sexo N 1 ligaçã o VI MatrEmp<pk> Nome Sexo End DtNasc Salario Tabela Empregado NomeDep<pk> MatrEmp<pk><fk> DtNasc Ligacao Sexo Tabela Dependente Tabela Empregado (matrEmp, nome,sexo, end, dtNasc, salario) Tabela Dependente (NomeDep, matrEmp, dtNasc, ligacao,sexo) matrEmp referencia Empregado(matrEmp) Implementação de relacionamento • O fator determinante para a transformação a adotar no caso de relacionamento é a cardinalidade e a participação das entidades que envolvidas no relacionamento • Tabela própria • Fusão de Tabelas Tabela própria • Sempre que um relacionamento for mapeado para uma tabela, esta será composta pelas seguintes colunas: • Colunas correspondentes aos identificadores das entidades relacionadas • Colunas correspondentes aos atributos do relacionamento Relacionamento 1:1 • As duas entidades tem participação parcial: • opção recomendada é sua representação como chave estrangeira. • Inserção de uma coluna (FK) na tabela referente a uma das entidades que participam do relacionamento. Pode ser escolhida qualquer entidade • Atributos do relacionamento serão colunas da tabela escolhida para ter a chave estrangeira 1 Departamento Empregado I mat r nom e sex o end er. 1 nom e númer o salári o data nasc data inic.gerente local MatrEmp<pk> Nome Sexo End DtNasc Salario Empregado NumDep<pk> Nome Gerente <FK> DtGerente Departamento Tabela Empregado (matrEmp,nome,sexo,end, dtNasc, salario) Tabela Departamento (numDep,nome,gerente,dtGerente) gerente referencia Empregado(matrEmp) Fusão de tabelas de entidade • As entidades envolvidas no relacionamento tem participações totais • Essa tradução somente pode ser aplicada quando o relacionamento é do tipo 1:1 • opção recomendada é a junção das entidades envolvidas no relacionamento em uma única tabela Implementação de relacionamento 1:1 1:1 – Ambas opcionais - Tabela própria 1:1 – Ambas opcionais – Fusão de Tabelas 1:1 – Ambas opcionais – Discussão • Solução por fusão de tabelas é inviável – Chave primária artificial • Solução por tabela própria aceitável. Exercícios • Gere o esquema lógico relacional para os seguintes diagramas ER: Exercício - DER 1) Usando as regras de transformação de modelos ER para modelos lógico relacional, projete um BD relacional para o modelo ER: Exercício DER • Atributos: Exercício - DER 2) Usando as regras de transformação de modelos ER para modelos lógico relacional, projete um BD relacional para o modelo ER: Exercício DER • Atributos:
Compartilhar