-
se B transita para C e ambos são atributos não chaves não é possível estar na 3FN
-
Não entendi, para mim seria 2FN
-
Se a chave só tem um atributo e a tabela está na 1ª FN, também está na 2ª FN. Por isso a regra quebrada é da 3ª FN (Nenhum atributo não-chave depende funcionalmente de nenhum outro atributo não-chave)
Espero ter ajudado.
Abs
Gilberto Horácio
www.gilbertohoracio.blogspot.com.br
-
Pessoal para responder essa questão fiz uma esquema:
A(pk) | B | C | D.
B depende da A.
C depende de A.
D depende de A.
C depende de B também.
Análise
1 - Não tem como saber se viola a 1 FN, devido a não demonstração dos valores dos atributos multivalorados.
2 - Não viola a 2 FN, porque todos os atributos não-chaves dependem complementamente da chave-primária e não parcial. Note que a chave primária é A, e todos dependem dela.
3 - Viola a 3 FN, porque o atributo C depende da chave-primária e também de outro atributo não-chave, neste caso (atributo B). Para estar na 3FN, os atributos B e C tinham que estar em única tabela.
4 - E se não estar na 3 FN. não tem como estar nas demais formais normais (4 e Boyce-Codd).
-
Bom comentario Roger Sampaio. Contudo, quando diz que os valores são atômicos no enunciado, já invalida a letra A.
Abraço.
-
A é chave.
A → B ok
B → C (c depende de b, um atributo nao-chave. Se for na mesma entidade, viola 3FN.(a questao ja responde isso))
A → D ok
A → C (c é transitivamente dependente porque depende de b, o qual depende de A). Logo, 3fn deve ser aplicaod;
-
A questão deveria ter mais de um gabarito pois:
Se está na FNBC então está na 3FN.
Se não está na 3FN, então não está na FNBC.
A FNBC diz : "Uma relação está em FNBC se para toda dependência funcional X => Z (X determina Z), X é uma super-chave."
E claramente, há uma dependência funcional do tipo B => C (B determina C) onde B não é super-chave.
Então a letra d também deveria ser correta pois viola a 3FN e a FNBC também.
-
A questão pergunta qual norma é viola, nesse caso a 3FN.
-
3ª Forma Normal - Deve estar na 2ª FN e não conter dependência funcional transitiva.
Dependência Funcional Transitiva: quando uma coluna além de depender da chave primária de uma tabela, depende de outra coluna ou conjunto de colunas.
Obs.: Causa anomalias de inserção, exclusão e/ou modificação.
Na questão diz:
B -> C
A -> C
Por isso o gabarito é a Letra C
-
A questão é ambígua, pois para considerar que a altenativa é viola a 3FN ou 3.5FN, você precisa saber se A → C é dependência transitiva ou não, o que não foi dito em lugar nenhum na questão. Apesar de B → C vir antes de A → C, não se pode pressumir isso que A → C é dependência transitiva, a meu ver deveria haver um parêntese (transitiva) para diferenciar da dependência direta, aí acabaria a ambiguidade.
A → B
B → C
A → D
A → C (transitiva ou não?)
Se A -> C for transitiva, viola 3FN, caso contrário viola somente 3.5FN.
Passível de anulação, gabarito poderia ser C ou D, a depender da interpretação.