Uma entidade encontra-se em Segunda Forma Normal se e somente estiver em Primeira Forma Normal e não tiver atributos com dependências parciais. No caso de uma chave primária composta, isto é, que possui mais de um atributo em sua composição, é denominada dependência parcial a dependência de um atributo não chave a apenas uma parte da chave primária.
Tomemos como exemplo a tabela compra, descrita abaixo:
Compra (nro_nf, cod_fornecedor, cod_produto, data,nome produto, quantidade, valor_unitario, valor_total_nota)
Tendo como chave primária os atributos: nro_nf, cod_fornecedor, cod_produto
Se analisarmos a dependência funcional teremos:
nro_nf, cod_fornecedor --> data
nro_nf, cod_produto --> quantidade
nro_nf, cod_produto --> valor_unitario
nro_nf, cod_fornecedor --> valor_total_nota
cod_produto --> nome_produto
Vemos agora que nem todos os atributos dependem da chave primária. O que não é permitido pela Segunda Forma Normal. Para que essa entidade fique em 2NF, teremos de desmembrá-la.
Ela ficará assim:
Compra (nro_nf, cod_fornecedor, data, valor_total_nota)
Tendo como chave primária os atributos nro_nf e cod_fornecedor e como chave estrangeira o atributo cod_fornecedor.
Item_compra (nro_nf, cod_produto, quantidade, vl_unitario)
Tendo como chave primária os atributos nro_nf e cod_produto e como chaves estrangeiras os atributos nro_nf e cod_produto.
Produto (codigo, nome)
Tendo como chave primária o atributo codigo.
História? Conhecimentos Gerais? Desenvolvimento de Software? Algoritmos? Funções? Sim, o blog TTech - Tudo em Tecnologia foi criado nesse intuito, para compartilhar conhecimentos nos mais variados ramos da tecnologia.
Mostrando postagens com marcador 2NF. Mostrar todas as postagens
Mostrando postagens com marcador 2NF. Mostrar todas as postagens
quinta-feira, 23 de maio de 2013
Assinar:
Postagens (Atom)