Nota: As três primeiras formas normais atendem à maioria dos casos de normalização.
Uma forma normal engloba todas as anteriores, isto é, para que uma tabela esteja na 2FN, ela obrigatoriamente deve estar na 1FN e assim por diante.
Normalmente após a aplicação das regras de normalização, algumas tabelas acabam sendo divididas em duas ou mais tabelas. Este processo colabora significativamente para a estabilidade do modelo de dados e reduz consideravelmente as necessidades de manutenção.
Chave candidata: Atributo ou conjunto de atributos que são únicos para cada registro. Para cada tabela podemos ter uma ou várias chaves desse tipo. Exemplo: codigo e cpf.
Chave primária: Entre as chaves candidatas, escolhemos uma para ser o identificador principal da tabela. Este atributo passa a ser chamado de chave primária (PK – Primary Key).
Chaves alternativas: São as chaves candidatas que não foram definidas como chave primária.
Chave estrangeira: É o atributo ou conjunto de atributos que faz a ligação com a chave primária de outra tabela.
Sempre que um atributo X identifica um atributo Y, dizemos que entre eles há uma dependência funcional. Temos, portanto, que X é o determinante e que Y é o dependente.
A representação é: X->Y (lê-se X determina Y ou Y é dependente de X).
Cidade ->Estado.
No exemplo a seguir, estado é funcionalmente dependente de cidade ou ainda cidade determina estado.
Se um atributo X determina Y e se Y determina Z, podemos dizer que X determina Z de forma transitiva, isto é, existe uma dependência funcional transitiva de X para Z.
cidade -> estado
estado -> país
cidade -> país (cidade determina país de forma transitiva)
O lado esquerdo de uma dependência funcional é irredutível quando o determinante está em sua forma mínima, isto é, quando não é possível reduzir a quantidade de atributos determinantes sem perder a dependência funcional.
{cidade, estado} -> país (não está na forma irredutível à esquerda, pois podemos ter somente o estado como determinante)
Não redutível a esquerda
Irredutível a esquerda
Nota: Nem sempre estar na forma irredutível à esquerda significa possuir um determinante com apenas uma coluna.
A DMV é uma ampliação da Dependência Funcional (DF). Na DMV o valor de um atributo determina um conjunto de valores de um outro atributo.
É representada por X ->-> Y (X multidetermina Y ou Y é multidependente de X).
DF: {CPF} -> {Nome} Temos somente um nome para cada CPF
DMV: {CPF} ->-> {Dependente} Temos vários dependentes para cada pessoa
Responda às seguintes perguntas: