Questão
- Considere o seguinte esquema de uma locadora de videos:
video(titulo, diretor, cod-barra)
cliente(nome, end, num-cli)
aluguel(num-cli, cod-barra, data)
As dependências funcionais são as seguintes:
- cod-barra -> titulo
- cod-barra -> diretor
- titulo -> diretor, cod-barra
- nome, end -> num-cli
- num-cli -> nome, end
- cod-barra, data -> num-cli
a) Qual a forma normal se encontra cada relação do esquema da locadora de videos? Por que?
b) Decomponha o esquema da locadora de videos utilizando o algoritmo de normalização de Boyce-Codd (BCNF) e apresente um esquema normalizado na BCNF.
c) É dito que a decomposição pela BCNF pode perder dependências funcionais após a normalização. Apresente uma dependência funcional "perdida" após a normalização realizada na questão anterior.
a) Analisando cada relação:
-
video(titulo, diretor, cod-barra):
- As dependências são: cod-barra -> titulo, cod-barra -> diretor, titulo -> diretor, cod-barra.
- Esta relação está na 1ª Forma Normal (1FN) porque não possui atributos multivalorados ou compostos.
- Não está na 2ª Forma Normal (2FN) porque há dependências parciais (cod-barra -> titulo e cod-barra -> diretor).
- Não está na 3ª Forma Normal (3FN) porque há dependências transitivas (titulo -> diretor, cod-barra).
-
cliente(nome, end, num-cli):
- As dependências são: nome, end -> num-cli e num-cli -> nome, end.
- Esta relação está na 3ª Forma Normal (3FN) porque todas as dependências são de chave completa e não há dependências transitivas.
-
aluguel(num-cli, cod-barra, data):
- A dependência é: cod-barra, data -> num-cli.
- Esta relação está na 1ª Forma Normal (1FN) porque não possui atributos multivalorados ou compostos.
- Não está na 2ª Forma Normal (2FN) porque há dependências parciais (cod-barra, data -> num-cli).
b) Decomposição na BCNF:
-
video:
- Decompor em: video1(cod-barra, titulo) e video2(titulo, diretor)
-
cliente:
- Já está na BCNF.
-
aluguel:
- Decompor em: aluguel1(cod-barra, data, num-cli)
c) Dependência funcional "perdida":
- Após a decomposição, a dependência funcional "cod-barra, data -> num-cli" pode ser perdida, pois a relação "aluguel" foi decomposta e essa dependência não é mais diretamente representada em uma única relação.
Para determinar a forma normal de cada relação, analisamos as dependências funcionais e verificamos se há dependências parciais ou transitivas. A decomposição na BCNF envolve a eliminação de todas as dependências transitivas e parciais, garantindo que cada relação esteja na forma normal de Boyce-Codd. No entanto, essa decomposição pode resultar na perda de algumas dependências funcionais, como a dependência "cod-barra, data -> num-cli" na relação "aluguel".