Considere quatro relações compostas da seguinte forma: Pedid...
Pedido(NumPedido, Data_Pedido,
IDCliente, Nome_Cliente)
ItemPedido(NumPedido, NumItem,
Quantidade_Item_Pedido)
Item(NumItem, Preço_Item)
Cliente(IDCLiente, Nome_Cliente,
Endereco_Cliente).
Obs.: O termo sublinhado é o atributo identificador da relação.
Quanto às regras de normalização, é correto afirmar que Pedido, ItemPedido e Item, estão normalizadas, respectivamente, até a
Pedido -
Nao possui atributos multivalorados = 1FN
Nao possui chavePK composta = 2FN
PK determina IDCliente que determina Nome_Cliente != 3FN
ItemPedido
Nao possui atributos multivalorados = 1FN
Quantidade_Item_pedido precisa de ambas superchaves = 2FN
Nao possui mais de um atributo nao chave = 3FN
Item
Nao possui atributos multivalorados = 1FN
Nao possui chavePK composta = 2FN
Nao possui mais de um atributo nao chave = 3FN Considere quatro relações compostas da seguinte forma:
Pedido(NumPedido, Data_Pedido,
IDCliente, Nome_Cliente)(2FN)
ItemPedido(NumPedido, NumItem,
Quantidade_Item_Pedido) (3FN)
Item(NumItem, Preço_Item) (3FN)
Cliente(IDCLiente, Nome_Cliente,
Endereco_Cliente).
Obs.: O termo sublinhado é o atributo identificador da relação.
Quanto às regras de normalização, é correto afirmar que Pedido, ItemPedido e Item, estão normalizadas, respectivamente, até a
Eu ja tentei entender essa questão mas não entra na minha cabeça.
2FN: Deve estar na 1 FN e todo atributo não chave tem que ser totalmente dependente da chave.
Relação Pedido(NumPedido, Data_Pedido, IDCliente, Nome_Cliente).
O atributo Nome_Cliente depende de IDCliente. Ele não depende totalmente da chave primária, NumPedido.
Pq a relação esta na 2FN? e não somente na 1FN?
Já li também a afirmação de que se uma relação possui somente uma chave primária, já estaria na 2FN(Tendo passado pelos requisitos da 1FN, logicamente).
Eu sinceramente não consigo entender. Se alguém puder ajudar. Se meus conceitos estiverem errados. Melhor errar agora do que na prova!!!
Esta em 3FN quando nao houver dependencia transitiva (o atributo que gerou dependencia é chave primaria da nova tabela com o atributo da tabela anterior).
Alternativa correta: D - 2FN, 3FN e 3FN.
Para entender o porquê dessa alternativa ser a correta, é necessário conhecer o que são as formas normais em teoria de banco de dados. As formas normais são regras que visam evitar redundâncias e dependências inapropriadas, mantendo a integridade dos dados. Em resumo:
- 1ª Forma Normal (1FN): Exige que os valores em cada coluna de uma relação sejam atômicos, ou seja, não devem existir grupos de valores ou valores repetidos dentro de uma mesma coluna.
- 2ª Forma Normal (2FN): Além de estar na 1FN, exige que todos os atributos não-chave sejam funcionalmente dependentes da chave inteira, e não apenas de uma parte dela.
- 3ª Forma Normal (3FN): Além de cumprir com a 2FN, os atributos não-chave devem ser dependentes somente da chave primária, eliminando as dependências transitivas.
Vamos analisar cada relação:
A relação Pedido possui o atributo IDCliente, o qual não é a chave primária, mas está relacionado com Nome_Cliente, configurando uma dependência transitiva (IDCliente determina Nome_Cliente). Sendo assim, essa relação só satisfaz até a 2FN, pois Nome_Cliente deveria estar em uma tabela separada com IDCliente.
Em seguida, a relação ItemPedido não tem atributos que dependam de parte da chave primária ou de outros atributos não-chaves, apenas da chave composta inteira (NumPedido, NumItem), estando, portanto, na 3FN.
Por fim, a relação Item é bastante direta e simples, com NumItem como chave primária e Preço_Item dependendo apenas dessa chave, o que a coloca na 3FN.
Concluindo, após análise das dependências e estruturas das relações, pode-se determinar que Pedido está na 2FN, e ItemPedido e Item estão na 3FN.