Questão FC372763
Considere uma tabela “cidadao” com os campos CPF (chave primária), nome, contato e uma tabela “imposto” com os campos IDImposto (chave primária), nomeImposto e periodicidade. Cada
Projeto e Modelagem de Dados
FCC · 2024
Considere uma tabela “cidadao” com os campos CPF (chave primária), nome, contato e uma tabela “imposto” com os campos IDImposto (chave primária), nomeImposto e periodicidade. Cada cidadão paga diversos impostos. Em um banco de dados relacional, considerando o mundo real, bem como as regras de modelagem de dados, a cardinalidade da relação entre as tabelas “cidadao" e “imposto” é
- muitos-para-muitos e pode ser modelada repetindo-se a chave primária de uma entidade na outra de forma cruzada.
- muitos-para-muitos e pode ser modelada criando-se uma tabela associativa entre “cidadao' e “imposto”.
- um-para-muitos e pode ser modelada utilizando as notações pé-de-galinha. UML, Chen ou Information Engineering.
- um-para-um, poiz cada pagamento de imposto está associado única e exclusivamente a um único cidadão.
- muitos-para-um, pois muitos cidadãos pagam o mesmo tipo de imposto em periodicidades variáveis (anualmente, mensalmente etc.).
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
A relação entre cidadao e imposto é de muitos-para-muitos: um cidadão pode pagar vários impostos e um mesmo imposto é pago por muitos cidadãos. Esse tipo de cardinalidade não pode ser representado diretamente em tabelas relacionais sem perda ou redundância.
Para mapear corretamente, cria‑se uma tabela associativa (por exemplo, cidadao_imposto) que contém as chaves estrangeiras referenciando as chaves primárias de cidadao (CPF) e imposto (IDImposto). Essas FKs podem formar uma chave primária composta ou pode‑se usar um identificador substituto.
A tabela associativa permite ainda armazenar atributos do relacionamento (ex.: data_pagamento, valor_pago) e transforma o relacionamento M:N em duas relações 1:N, mantendo integridade e evitando redundância.
Conteúdo do catálogo FC Concursos · Atualizado em