| Linha 1: | Linha 1: | ||
= Dependência Funcional = | = Dependência Funcional = | ||
<br> | <br> | ||
*Segundo Heuser (2001), uma forma normal (FN) é uma regra que deve ser obedecida por uma tabela para que ela seja considerada “bem projetada”. Existem inúmeras formas normais, ou seja, diversas regras, cada vez mais rígidas, para verificar tabelas em banco de dados relacionais. No entanto, pelo menos 3 FNs são consideradas essenciais para a construção de um bom projeto de banco de dados. | |||
* O que é Dependência Funcional baseada em Separação? | * O que é Dependência Funcional baseada em Separação? | ||
* Exemplos | * | ||
* Uma relação está na 1FN quando todos os atributos da relação estiverem baseados em um domínio simples, não contendo grupos ou valores repetidos. | |||
* Exemplos: | |||
Considere a tabela: | |||
[[Arquivo:1FN_tab01.gif]] | |||
Constrói-se um modelo para separarmos as casas com mais de um dado, no caso Nome, Categoria, Salário, Data Inicial e Tempo: | |||
[[Arquivo:1FN_tab2.gif]] | |||
Porém, vemos que se repetem mais de um dado, Codigo do Projeto (CodProj), Tipo e Descrição (Descr). | |||
Sendo assim, dividiremos em duas tabelas (Projeto (Proj) e Empregados (ProjEmp)), utilizando uma chave na tabela Projeto para associação aos empregados: | |||
[[Arquivo:1FN_tab03.gif]] | |||
Vemos aqui que a chave da tabela Projetos (Proj) trata-se, do Codigo do Projeto (CodProj) que está associado à tabela Empregados (ProjEmp) | |||
<br> | <br> | ||
Edição das 01h09min de 25 de julho de 2013
Dependência Funcional
- Segundo Heuser (2001), uma forma normal (FN) é uma regra que deve ser obedecida por uma tabela para que ela seja considerada “bem projetada”. Existem inúmeras formas normais, ou seja, diversas regras, cada vez mais rígidas, para verificar tabelas em banco de dados relacionais. No entanto, pelo menos 3 FNs são consideradas essenciais para a construção de um bom projeto de banco de dados.
- O que é Dependência Funcional baseada em Separação?
- Uma relação está na 1FN quando todos os atributos da relação estiverem baseados em um domínio simples, não contendo grupos ou valores repetidos.
- Exemplos:
Considere a tabela:
Constrói-se um modelo para separarmos as casas com mais de um dado, no caso Nome, Categoria, Salário, Data Inicial e Tempo:
Porém, vemos que se repetem mais de um dado, Codigo do Projeto (CodProj), Tipo e Descrição (Descr). Sendo assim, dividiremos em duas tabelas (Projeto (Proj) e Empregados (ProjEmp)), utilizando uma chave na tabela Projeto para associação aos empregados:
Vemos aqui que a chave da tabela Projetos (Proj) trata-se, do Codigo do Projeto (CodProj) que está associado à tabela Empregados (ProjEmp)
Exemplo 1 de 1FN - Nota Fiscal
- Procedimento:
Os três procedimentos mais usados na aplicação da 1FN são:
- Identificar a chave primária da entidade;
- Identificar o grupo repetitivo e removê-lo da entidade;
- Criar uma nova entidade com a chave primária da entidade anterior e o grupo repetitivo.
- Desenho em tabelas
Tabela inicial com todos os dados que possam estar em uma nota fiscal.
Aplicando os procedimentos, temos:
- Chave Primária: nro_nota
- Grupos repetitivos a serem removidos:
- 1º Grupo - Dados do cliente:
- CPF (chave do grupo)
- nome_cliente
- Tel_cliente
- End_cliente
- 1º Grupo - Dados do cliente:
- 2º Grupo - Dados do Produto
- codProduto (chave do grupo)
- Quantidade
- Valor
- Descricao
- 2º Grupo - Dados do Produto
Criamos uma nova classe Nota Fiscal, com a chave primária e as chaves dos grupos.
Exemplo 2 de 1FN
- Procedimento
- Desenho em tabelas
Exemplo 3 de 1FN
- Procedimento
- Desenho em tabelas
Referências
- Prioritariamente livros e artigos
- Notação ABNT


