Questão nº 55
Questão de Banco de Dados · FCC TST 2017 (nº 55)
Considere, por hipótese, os requisitos abaixo, levantados durante a modelagem de dados:
I. A entidade Empregado exerce dois papéis: Gerente e Gerenciado. Cada empregado tem um só gerente e um gerente chefia diversos empregados.
II. Um empregado (entidade Empregado) ocupa somente um cargo (entidade Cargo) que também pode ser ocupado por outros empregados.
III. Um departamento (entidade Departamento) aloca diversos empregados (entidade Empregado). Um empregado só pode ser alocado em um único departamento.
IV. Os atributos identificadores das entidades Empregado, Cargo e Departamento são, respectivamente, Matrícula, Código do Cargo e Código do Departamento.
Em um modelo normalizado, são chaves estrangeiras em I, II e III, respectivamente,
- AMatrícula (do gerenciado), Código do Cargo e Código do Departamento.
- BMatrícula (do gerente), Matrícula e Código do Departamento.
- CMatrícula (do gerente), Código do Cargo e Código do Departamento. (alternativa correta)
- DMatrícula (do gerenciado), Matrícula e Matrícula.
- EMatrícula (do gerenciado), Código do Cargo e Matrícula.
Resposta comentada
Gabarito Alternativa C
Uma chave estrangeira (Foreign Key - FK) é uma coluna (ou conjunto de colunas) em uma tabela que aponta para a chave primária (Primary Key - PK) de outra tabela (ou da mesma tabela), estabelecendo um elo entre elas. Ela garante que os dados relacionados sejam válidos.
- (A) Incorreta: A chave estrangeira para o relacionamento de gerência é a Matrícula do gerente, não do gerenciado. A Matrícula do gerenciado é a chave primária da própria linha do empregado.
- (B) Incorreta: Para o requisito II, a chave estrangeira é o Código do Cargo, pois um empregado ocupa um cargo e a FK deve referenciar a PK da entidade Cargo.
- (C) Correta:
- I. Empregado (Gerente e Gerenciado): É um relacionamento recursivo. Cada empregado (gerenciado) tem um gerente. A tabela
Empregadoterá uma coluna (ex:Matricula_Gerente) que será a chave estrangeira, referenciando aMatrícula(PK) de outro empregado (o gerente) na mesma tabela. Portanto, a FK é a Matrícula (do gerente). - II. Empregado (ocupa) Cargo: Um empregado ocupa um cargo (1:N de Cargo para Empregado). A chave estrangeira (
Código do Cargo) deve estar na entidadeEmpregado, referenciando a chave primária da entidadeCargo. - III. Departamento (aloca) Empregado: Um empregado pertence a um departamento (1:N de Departamento para Empregado). A chave estrangeira (
Código do Departamento) deve estar na entidadeEmpregado, referenciando a chave primária da entidadeDepartamento.
- I. Empregado (Gerente e Gerenciado): É um relacionamento recursivo. Cada empregado (gerenciado) tem um gerente. A tabela
- (D) Incorreta: As chaves estrangeiras para os requisitos II e III não são Matrícula, mas sim Código do Cargo e Código do Departamento, respectivamente.
- (E) Incorreta: A chave estrangeira para o requisito I é a Matrícula do gerente, não do gerenciado. Para o requisito III, a FK é o Código do Departamento.
Fonte: FCC TST 2017 Analista Judiciário - Análise de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.