Baixe o app para aproveitar ainda mais
Prévia do material em texto
MODELAGEM LÓGICA NORMALIZAÇÃO • Normalizar em sentido amplo significa voltar à ordem. • Um bom projeto de banco de dados garante ao usuário a possibilidade de modificar o conteúdo do banco de dados sem causar efeitos colaterais inesperados ou anomalias de atualização (ou modificação). • Uma anomalia de modificação é um efeito colateral inesperado que ocorre quando se alteram os dados de uma tabela com redundâncias excessivas. NORMALIZAÇÃO VEJAMOS UM EXEMPLO ... Anomalia de atualização O QUE PODEMOS FAZER? Desta forma, se atualizarmos a primeira linha da TABELA CLIENTE, não geramos uma anomalia de atualização e ainda por cima reduzimos a redundância dos dados. Show hein!? ਏ • O processo de normalização, como foi inicialmente proposto por Codd (1972), ele sujeita um esquema de relação a uma série de testes para certifica-se de que ele satisfaça certa forma normal. • A normalização de dados é uma técnica de decomposição utilizada no projeto de banco de dados com objetivo de prover um armazenamento consistente, evitando redundância de dados e anomalias de atualização. CONCEITO DE NORMALIZAÇÃO DEPENDÊNCIA FUNCIONAL • A dependência funcional (DF) é uma restrição de duas ou mais colunas de uma tabela. • Considerando X e Y colunas de uma tabela, podemos dizer que X determina Y (X тYぶ se existe no máximo um valor de Y para cada valor de X. • Por exemplo, o número do cadastro de pessoa física determina a cidade (CPFAluno т CidadeAluno) na tabela do banco de dados de uma universidade, se existir no máximo um valor de cidade para cada número do cadastro de pessoa física. DEPENDÊNCIA FUNCIONAL • Formalmente, uma dependência funcional, denotada por X → Y entre dois conjuntos de atributos X e Y, que são subconjunto de R, especifica uma restrição nas possíveis tuplas que formam um estado da relação r de R. A restrição é que, para quaisquer duas tuplas t1 e t2 em r que tenha t1[X] = t2[X], elas também têm de ter t1[Y] = t2[Y]. DEPENDÊNCIA FUNCIONAL (DEF. FORMAL) DF TRIVIAL E NÃO TRIVIAL Relação (A, B, C, D, E) A, B, C → C Dependência trivial. A, B → D D.F. não trivial • Agente Especializado (MPE ES)/Analista de Banco de Dados/2013 • No projeto lógico de um banco de dados relacional, é importante verificar o nível de normalização das tabelas do banco de dados. Um dos propósitos da normalização é • a) evitar redundâncias desnecessárias nas tabelas. • b) eliminar todas as chaves primárias das tabelas. • c) criptografar os dados mais relevantes do banco de dados. • d) obter arquivos adequados ao backup do banco de dados. • e) transformar todas as tabelas do banco de dados em classes da orientação a objetos. QUESTÃO. • Analista Judiciário (TJ PE) • NÃO é um objetivo do processo de normalização • a) reduzir redundâncias. • b) evitar anomalias de atualização. • c) simplificar imposição de restrições de integridade. • d) produzir uma boa base para crescimento futuro. • e) reduzir o número de junções em tempo de execução. QUESTÃO. MODELAGEM LÓGICA PRIMEIRA FORMA NORMAL (1FN) • Essa forma normal é considerada uma parte da definição de relação no modelo relacional básico. • Sua definição prevê que todos os atributos de uma relação devem ter seus valores definidos sobre domínios atômicos ou indivisíveis. • Em outras palavras, os campos de uma tabela não devem ser compostos ou multivalorados. PRIMEIRA FORMA NORMAL EXEMPLO Multivalorado Composto ATRIBUTOS COMPOSTOS ATRIBUTOS MULTIVALORADOS A primeira forma normal evita as chamadas relações aninhadas, essas relações contêm vários atributos em uma única coluna e não são permitidas no modelo relacional. MODELAGEM LÓGICA SEGUNDA FORMA NORMAL (2FN) • A segunda forma norma visa resolver um problema de dependência parcial. – Uma relação com uma chave primária (ou candidata) composta onde um dos atributos determina isoladamente outro atributo da relação. SEGUNDA FORMA NORMAL EXEMPLO RESOLVENDO Agora temos duas relações com ausência de dependência funcional parcial. Uma tabela está na segunda forma normal (2FN) se estiver na primeira forma normal (1FN), e seus atributos não chaves forem totalmente dependentes da chave primária. OUTRO EXEMPLO MODELAGEM LÓGICA TERCEIRA FORMA NORMAL (3FN) • A relação tem que estar na segunda forma normal e ainda todo atributo não primário da relação não ser transitivamente dependente de uma chave da relação. • Uma relação está na Terceira Forma Normal (3FN) se ela estiver na 2FN e nenhum atributo não chave (não primário) é transitivamente dependente de uma chave candidata. Enfim, na 3FN não se aceita dependência transitiva. TERCEIRA FORMA NORMAL EXEMPLO RESOLVENDO MODELAGEM LÓGICA FORMA NORMAL DE BOYCE-CODD (FNBC) • A forma normal de Boyce-Codd foi proposta como uma forma mais simples que 3FN, porém mais rígida. • Sua definição diz o seguinte: uma relação está na FNBC se todo determinante é chave candidata. FORMA NORMAL DE BOYCE-CODD EXEMPLO {Professor, Disciplina} {Professor, Aluno} MAIS UM EXEMPLO RESUMINDO DAS FORMAS NORMAIS ひ 1ª Forma NormalEliminar atributos não atômicos ひ 2ª Forma NormalEliminar dependências funcionais não plenas ひ 3ª Forma NormalEliminar dependências transitivas ひ FNBCEliminar dependência funcional cujo determinante não é chave candidata ひ 4ª Forma NormalEliminar dependência multivalorada ひ 5ª Forma NormalEncontrar a dependência de junção
Compartilhar