Baixe o app para aproveitar ainda mais
Prévia do material em texto
* * Prof: Márcio Soussa Centro Universitário Jorge Amado * Referências Bibliográficas Sistemas de Banco de Dados, Navathe Introdução a Sistemas de Bancos de Dados, C.J. Date, Ed. Campus. Sistema de Banco de Dados, A Silberschatz, H.F. Korth, Ed. Makron Books Modelagem Conceitual e Projeto de Bancos de Dados, P. Cougo, Ed. Campus * Projeto Lógico Normalização Processo muito importante para um projeto de banco de dados. Consiste em analisar o modelo e através de regras formais, reestruturar possíveis tabelas e atributos, reduzindo assim redundâncias e permitindo o crescimento do bd com o mínimo de efeito colateral. Consiste em diminuir redundância e anomalias de inserção, atualização e deleção. * Projeto Lógico Normalização Consiste em analisar relações para satisfazer requisitos cada vez mais rigorosos acarretando agrupamentos cada vez melhores, mais estáveis e seguros. Realiza-se uma série de testes para certificar se a relação está ou não em uma determinada forma normal. O processo consiste em certificar e decompor. Fundamentado no conceito de Dependência Funcional * Projeto Lógico Formas Normais Dividem-se em 6 formas normais: 1 FN (1o Forma Normal) 2 FN (2o Forma Normal) 3 FN (3o Forma Normal) * Diz-se normalizado _______Estudaremos até aqui ______________ FNBC (Forma Normal de Boyce e Codd) 4 FN (4o Forma Normal) 5 FN (5o Forma Normal) * Projeto Lógico Fundamento das FNs Dependência Funcional Corresponde a um restrição entre conjuntos de atributos em uma relação Se X identifica Y, então X Y e diz-se que há uma dependência funcional entre eles. X determina Y, Y é funcionalmente dependente de X Ex: Identificar as dependências funcionais na relação abaixo: Matricula, nome, sexo e data de nascimento do aluno, código, nome e carga horária de disciplina e a data da inscrição do aluno na disciplina * Projeto Lógico Exemplo – Modelo não normalizado * Projeto Lógico Anomalias do modelo * Projeto Lógico 1o Forma Normal Diz-se que um modelo está na primeira forma normal se: ...Está integrado por tabelas ...As linhas das tabelas são unívocas ...As linhas não contêm itens repetitivos ...Os atributos são atômicos * Projeto Lógico 1o Forma Normal Ex.: Atributos multivalorados / Repetição de atributos Tabela Funcionario Nome Telefone Data de Admissão Valor de contribuição sindical (5 vezes) Se precisássemos expandir ou reduzir o no de repetições ? * Projeto Lógico 1o Forma Normal Processos para obtenção da 1o FN Definir chaves candidatas e escolher a chave primária da tabela Transformar atributos Compostos em atômicos Eliminar grupos repetitivos em cada tabela, gerando novas linhas * Projeto Lógico 2o Forma Normal Diz-se que um modelo está na segunda forma normal se: Estiver na 1o Forma Normal Cada coluna não pertencentes à Chave primária não for dependente parcialmente desta chave * Projeto Lógico 2o Forma Normal Processos para obtenção da 2o FN Identificar as colunas que não participam as chave primária da tabela Para as colunas identificadas acima, analisar se seu valor é determinado por parte ou totalidade da chave Procedimentos para colunas dependentes parcialmente da chave * Projeto Lógico 3o Forma Normal Diz-se que um modelo está na terceira forma normal se: Estiver na 2o Forma Normal Nenhuma coluna não pertencentes à Chave primária fica determinada transitivamente por esta * Projeto Lógico 3o Forma Normal Processos para obtenção da 3o FN Identificar as colunas que não participam as chave primária da tabela Para as colunas identificadas acima, analisar se seu valor é determinado por parte ou totalidade da chave Procedimentos para colunas dependentes transitivamente da chave * Projeto Lógico Normalização Momentos da Normalização Durante o processo de concepção do Modelo Conceitual. Ex.: Pedido de produto Abrangência do modelo Facilidade de Abstração e Compreensão Conhecimento Prévio do Ambiente Durante a Derivação do Modelo Lógico Momento ideal para fazermos a derivação Após o Processo de Derivação do Modelo Lógico Se caracteriza como um processo corretivo. * Projeto Lógico Normalização Benefícios Estabilidade do Modelo Lógico Ex.: Itens de repetição Integridade Economia Custo de manipulação dos dados. Backup, restauração, atualização (estr. adicionais) Fidelidade ao Ambiente Observado Podemos perceber a ausência de estruturas * Projeto Lógico Normalização Fidelidade ao ambiente observado Aluno: código do aluno, nome, ano admissão na universidade e telefone Inscrição: código do aluno, código da disciplina, nome da disciplina, código do curso, nome do curso e data da matrícula ALUNO INSCRIÇÃO * Projeto Lógico Normalização Todo banco de dados deve sempre estar normalizado ?
Compartilhar