Jump to content
Nuno

Normalização de dados 1FN / 2FN / 3FN

Recommended Posts

Nuno

Boas pessoal!

Estou aqui com uma duvida e não consigo sair do sitio.

O exercicio é o seguinte:

Seja a relação R (A, B, C, D, E, F, G, H, I, J, K, L, M, N), e o respetivo conjunto de dependências

funcionais associadas:

A → B, C,D, E, F, M,N

D, E → C, F, I

A,H, E → G, I,J

E → K, L

Faça o conjunto de decomposições até ter umconjunto de relações na 3ª FN. Indique sempre o

motivo pelo qual deve continuar a efetuar a decomposição para cada relação

Penso que na 1º Forma normal ficará assim mas não tenho a certeza:

R(A,B,C,D,E,F,M,N)

agora as restes 2FN e 3ºFN gostaria de saber se alguem me pode dar uma ajuda..

Abraços

Share this post


Link to post
Share on other sites
Rui Carlos

O conjunto de relações final devia conter todos os atributos da relação inicial.

Já agora, por que é que a aplicação da 1FN resulta nessa relação?

A aplicação da 1FN acho que pode ser feita apenas alterando a forma como os dados são distribuídos pelas linhas. (Há outra alternativa, que implica a criação de novas relações, mas com os dados disponibilizados, manteria a relação original).

Ou seja, depois de aplicada a 1FN, temos (os * representam a chave primária):

R (A*, H*, B, C, D, E, F, G, I, J, K, L, M, N)

Para a 2FN, temos de remover dependências parciais (só faz sentido quando existe uma chave composta, o que até é o caso).

Temos B, C, D, E, F, M, N, I, K, L que dependem apenas do A, logo ficam numa relação que depende do A. Não há nenhum que dependa apenas do H, logo os restantes atributos ficarão numa relação que depende de A e H.

Podemos então criar as relações:

R1 (A*, B, C, D, E, F, M, N, I, K, L)

R2 (A*, H*, G, J)

Para a 3FN, tens de remover dependências transitivas. Por exemplo, D, E, C, F, I estão todos na mesma relação (e nenhum deles é chave), e tens que D, E → C, F, I, logo isto é uma dependência transitiva. Para removeres esta dependência, vais colocar os atributos dependentes numa relação à parte (manténs as chaves na relação original). Ou seja, R1 (A*, B, C, D, E, F, M, N, I, K, L) é dividida em:

R11 (A*, B, D, E, M, N, K, L)

R12 (D*, E*, C, F, I)

(R2 fica, pelo menos para já, inalterada.)

Para terminares, só precisas de encontrar as restantes dependências transitivas.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.