Questão de Banco de Dados — Banco de Dados Relacionais — FCC 2018
Banco de Dados›Banco de Dados Relacionais
Código
fc048994
Banca
FCC
Órgão
SEFAZ-SC
Ano
2018
Cargo
Auditor-Fiscal da Receita Estadual - Auditoria e Fiscalização (Prova 3)
No modelo apresentado a entidade ItemPedido
Adeveria conter o campo PreUniPro, pois o preço unitário do produto deve ser incluído em cada item do pedido.
Bestá relacionada com as entidades Pedido e Produto usando a notação Integrated DEFinition for Information Modelling - IDEF1X.
Cpossui relação com cardinalidade n :n com a entidade Produto e 1 : n com a entidade Pedido.
Dpossui chave primária composta, mas não possui chave estrangeira, logo, não garante integridade referencial.
Epossui uma chave primária composta pelos atributos idItePed e idPed, sendo que os atributos qtdItePed e idPro possuem dependência funcional completa com relação à chave primária.
Revelar gabarito e comentário▾
GabaritoE — possui uma chave primária composta pelos atributos idItePed e idPed, sendo que os atributos qtdItePed e idPro possuem dependência funcional completa com relação à chave primária.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Modelagem de dados: entidade ItemPedido
Gabarito: letra E. A entidade associativa ItemPedido possui chave primária composta por idItePed (número do item no pedido) e idPed (identificador do pedido), sendo que os demais atributos (qtdItePed e idPro) apresentam dependência funcional completa em relação a essa chave, conforme define a 2ª Forma Normal. As demais alternativas incorrem em erros conceituais de modelagem.
A questão testa o conhecimento sobre modelagem relacional, chaves e normalização. O modelo típico de pedidos utiliza ItemPedido como entidade fraca, cuja chave primária composta reflete a dependência existencial em relação a Pedido. A figura (não reproduzida) segue esse padrão.
Alternativa A — ❌ Incorreta
Afirma que ItemPedido "deveria conter o campo PreUniPro". Em um banco de dados normalizado, o preço unitário é atributo da entidade Produto, não de ItemPedido. Incluí-lo violaria a 2ª ou 3ª Forma Normal, introduzindo dependência parcial ou transitiva. Não há obrigatoriedade de armazenar o preço em cada item, pois ele pode ser obtido por consulta à tabela Produto.
Alternativa B — ❌ Incorreta
Menciona a notação IDEF1X (Integrated DEFinition for Information Modelling). Embora essa notação exista, o modelo apresentado na figura original da FCC utiliza notação de Peter Chen ou outra notação de entidade-relacionamento, não IDEF1X. Não há indício no enunciado de que a modelagem tenha empregado essa notação específica.
Alternativa C — ❌ Incorreta
Afirma que ItemPedido possui relação n:n com Produto e 1:n com Pedido. Isto está trocado: ItemPedido é a tabela associativa que resolve a relação muitos-para-muitos entre Pedido e Produto. Dessa forma, ItemPedido possui cardinalidade n:1 (muitos para um) com Produto (cada item se refere a um único produto) e n:1 com Pedido (cada item pertence a um único pedido). A relação direta entre ItemPedido e Produto nunca é n:n.
Alternativa D — ❌ Incorreta
Alega que ItemPedido tem chave primária composta mas não possui chave estrangeira, comprometendo a integridade referencial. Na verdade, os atributos que compõem a chave estrangeira (como idPed e idPro) fazem parte da chave primária composta, ou são atributos separados que funcionam como chave estrangeira. Portanto, a integridade referencial é garantida pelas restrições de chave estrangeira definidas.
Alternativa E — ✅ Correta ⟵ GABARITO
A descrição corresponde ao modelo correto: a chave primária de ItemPedido é composta por idItePed (identificador do item dentro do pedido) e idPed (identificador do pedido). Os atributos qtdItePed (quantidade) e idPro (identificador do produto) possuem dependência funcional completa em relação a essa chave composta, ou seja, dependem da combinação inteira de idItePed e idPed. Isso satisfaz a 2ª Forma Normal, não havendo dependência parcial.
PEGA ESSA DICA!
Em tabelas associativas, a chave primária geralmente é composta pelas chaves estrangeiras das tabelas relacionadas. Se houver um identificador próprio (como idItePed), ele pode ser incluído, mas a dependência funcional deve ser sempre total em relação a toda a chave primária.