Pular para o conteúdo principal

Questão de Banco de Dados — SQL — Quadrix 2024

Banco de DadosSQL
Código
qg352875
Banca
Quadrix
Órgão
CRQ - 12ª Região (GO, TO e DF)
Ano
2024
Nível
Superior
Cargo
Analista de T.I.

Imagem da questão


Com referência ao código SQL (Structured Query Language) acima, julgue o item.O referido script possui a definição (criação) de duas chaves estrangeiras.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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”.

Chaves estrangeiras em SQL: contagem no script

Gabarito: CERTO (letra C). O script cria a tabela Empresa_Produto_Quimico com duas restrições FOREIGN KEY — uma referenciando Empresa(Cod_Empresa) e outra referenciando Produto_Quimico(Cod_Produto_Quimico) —, portanto a afirmação de que há a definição de duas chaves estrangeiras está correta.

Uma chave estrangeira (foreign key) é um campo (ou conjunto de campos) que referencia a chave primária de outra tabela, estabelecendo um relacionamento entre elas. Sua finalidade é garantir a integridade referencial: apenas valores que existem na tabela referenciada podem ser inseridos na coluna que é chave estrangeira. No script apresentado, a tabela Empresa_Produto_Quimico é uma tabela de associação (também chamada de tabela relacional ou tabela de ligação) entre Empresa e Produto_Quimico, típica de um relacionamento muitos-para-muitos (N:N).

Vamos analisar o script linha por linha para contar as chaves estrangeiras:

  • A tabela Empresa é criada com Cod_Empresa como chave primária (PRIMARY KEY).

  • A tabela Produto_Quimico é criada com Cod_Produto_Quimico como chave primária (implícita na linha 12, embora o texto-base não mostre explicitamente, é o que se deduz do contexto).

  • A tabela Empresa_Produto_Quimico é criada com duas colunas: Cod_Empresa e Cod_Produto_Quimico.

  • A chave primária dessa tabela é composta: PRIMARY KEY (Cod_Empresa, Cod_Produto_Quimico).

  • Em seguida, há duas restrições FOREIGN KEY:

    • FOREIGN KEY (Cod_Empresa) REFERENCES Empresa(Cod_Empresa) — primeira chave estrangeira.

    • FOREIGN KEY (Cod_Produto_Quimico) REFERENCES Produto_Quimico(Cod_Produto_Quimico) — segunda chave estrangeira.

Portanto, o script define exatamente duas chaves estrangeiras, ambas na tabela Empresa_Produto_Quimico. A afirmação do item é verdadeira.

A pegadinha aqui é sutil: o candidato pode contar apenas as restrições FOREIGN KEY explícitas e esquecer que a chave primária composta não é uma chave estrangeira, ou pode achar que a tabela Empresa_Produto_Quimico tem apenas uma chave estrangeira por ser uma tabela de ligação. Mas a leitura atenta do script mostra as duas restrições FOREIGN KEY claramente definidas.

NÃO CAIA NESSA!

A banca explora a contagem de chaves estrangeiras em uma tabela de associação. O candidato pode confundir a chave primária composta (PRIMARY KEY (Cod_Empresa, Cod_Produto_Quimico)) com uma chave estrangeira, ou pode achar que a tabela de ligação tem apenas uma FK. Mas o script é explícito: são duas FOREIGN KEY, uma para cada tabela referenciada. Leia sempre as linhas FOREIGN KEY e REFERENCES para contar corretamente.

Item — ✅ CERTO

A afirmação "O referido script possui a definição (criação) de duas chaves estrangeiras" está correta. O script cria a tabela Empresa_Produto_Quimico com duas restrições FOREIGN KEY:

  • FOREIGN KEY (Cod_Empresa) REFERENCES Empresa(Cod_Empresa) — referencia a chave primária da tabela Empresa.

  • FOREIGN KEY (Cod_Produto_Quimico) REFERENCES Produto_Quimico(Cod_Produto_Quimico) — referencia a chave primária da tabela Produto_Quimico.

Essas duas restrições garantem a integridade referencial entre a tabela de associação e as duas tabelas principais, permitindo que o relacionamento N:N seja implementado corretamente. A chave primária composta da tabela de associação não é uma chave estrangeira, mas sim a combinação das duas chaves estrangeiras que identificam unicamente cada par (empresa, produto químico).

Gabarito: letra C (CERTO).

Link permanente: /questoes/qg352875