Questão de Banco de Dados — Conceitos e Fundamentos de Modelo Relacional — FUNDATEC 2024
Banco de Dados›Conceitos e Fundamentos de Modelo Relacional
Código
qa630538
Banca
FUNDATEC
Órgão
Pref Criciúma
Ano
2024
Cargo
AFRM ( )
Para responder às questões 58 a 60, considere um SGBD relacional que contém duas tabelas, uma que contém os dados de municípios, e outra que contém os dados de bairros dos municípios, conforme a representação abaixo:
Municípios
bairros
id_municipio
10
12
13
15
id_bairro
id_municipio
1
15
2
10
3
11
Suponha que id_bairro é chave primária da tabela bairros. Qual das afirmações abaixo estaria INCORRETA?
Aid_bairro não pode ter valores repetidos.
Bid_bairro identifica unicamente um registro de bairros.
Cid_municipio, da tabela bairros, não pode ter valores repetidos.
DUm bairro pode estar relacionado a no máximo um município.
EUm município pode estar relacionado a mais de um bairro.
Revelar gabarito e comentário▾
GabaritoC — id_municipio, da tabela bairros, não pode ter valores repetidos.
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”.
Chave primária e chave estrangeira no modelo relacional
Gabarito: letra C. A afirmação incorreta é a de que id_municipio, na tabela bairros, não pode ter valores repetidos — esse campo é uma chave estrangeira, e chaves estrangeiras não possuem restrição implícita de unicidade, podendo repetir valores. As demais alternativas descrevem corretamente propriedades da chave primária (id_bairro) e do relacionamento 1:N entre municípios e bairros.
No modelo relacional, toda tabela possui uma chave primária (primary key), que é o atributo (ou conjunto de atributos) escolhido para identificar de forma única cada linha (tupla) da tabela. Por definição, a chave primária não aceita valores repetidos nem valores nulos. Já a chave estrangeira (foreign key) é o atributo que estabelece o relacionamento lógico entre duas tabelas: ela referencia a chave primária de outra tabela. Diferentemente da chave primária, a chave estrangeira pode conter valores repetidos e pode aceitar valores nulos (dependendo da regra de negócio).
No caso concreto, a tabela bairros tem id_bairro como chave primária (valores 1, 2, 3 — todos únicos) e id_municipio como chave estrangeira, referenciando a tabela municipios. Observe os dados: o município 10 aparece duas vezes na tabela bairros (bairros 2 e 3), o que comprova que id_municipio pode sim ter valores repetidos. Isso reflete a cardinalidade do relacionamento: um município pode ter vários bairros (1:N), mas cada bairro pertence a um único município.
A pegadinha da banca está em confundir o papel de cada coluna: id_bairro é chave primária (unicidade obrigatória), enquanto id_municipio é chave estrangeira (unicidade não é exigida). Guarde essa distinção — é exatamente nela que as alternativas se dividem.
Alternativa A — ✅ Correta
id_bairro é a chave primária da tabela bairros. Uma das propriedades fundamentais da chave primária é a unicidade: não pode haver duas linhas com o mesmo valor. Isso é o que garante a identificação única de cada registro. A afirmação está correta.
Alternativa B — ✅ Correta
A chave primária serve exatamente para identificar unicamente cada tupla da relação. Como id_bairro é a chave primária, cada valor distingue um registro de bairros dos demais. A afirmação está correta.
Alternativa C — ❌ Incorreta ⟵ GABARITO
id_municipio, na tabela bairros, é uma chave estrangeira — ela referencia a chave primária da tabela municipios. Chaves estrangeiras não possuem restrição implícita de unicidade: nada impede que o mesmo município apareça em várias linhas de bairros. Aliás, os próprios dados da questão comprovam isso: o município 10 aparece nos bairros 2 e 3. A afirmação de que não pode haver valores repetidos é falsa — é exatamente o contrário: pode haver, e há. Esta é a alternativa incorreta pedida.
Alternativa D — ✅ Correta
Como id_bairro é chave primária, cada bairro é identificado de forma única. Logo, um bairro específico só pode estar associado a um município — não existem duas linhas com o mesmo id_bairro apontando para municípios diferentes. Isso reflete a cardinalidade N:1 (muitos bairros para um município). A afirmação está correta.
Alternativa E — ✅ Correta
Não há nenhuma restrição de unicidade sobre id_municipio na tabela bairros. Portanto, um mesmo município pode aparecer em várias linhas, ou seja, pode estar relacionado a mais de um bairro. Os dados confirmam: o município 10 tem os bairros 2 e 3. A afirmação está correta.
NÃO CAIA NESSA!
A banca troca o papel das colunas: id_bairro é chave primária (unicidade obrigatória), mas id_municipio é chave estrangeira (unicidade não exigida). O candidato que aplica a regra da chave primária à chave estrangeira marca a alternativa C como correta — caindo na armadilha. Lembre-se: chave estrangeira serve para associar, não para identificar.
PEGA ESSA DICA!
Na prova, ao ver uma coluna que referencia outra tabela, pergunte-se: "ela é chave primária ou estrangeira?". Se for estrangeira, pode ter valores repetidos e nulos. Se for primária, não pode ter nem repetição nem nulo. Essa distinção resolve a maioria das questões sobre chaves no modelo relacional.
Gabarito: letra C — a única afirmação incorreta, pois id_municipio na tabela bairros é chave estrangeira e pode ter valores repetidos.