Tendo como referência as informações precedentes, julgue o i...

Próximas questões
Com base no mesmo assunto
Q1902774 Banco de Dados
Em um banco de dados relacional, foram criadas as seguintes relações, posteriormente transformadas e preenchidos seus dados em tabelas. As chaves primárias estão realçadas em itálico.

professor (cpf_professor, nome, titulação, salario)

curso (cod_curso, titulo, objetivo, cpf_professor_coord)

contrato (cpf_professor, cod_curso, data_inicio)

Tendo como referência as informações precedentes, julgue o item subsecutivo.


Para efeito de integridade referencial, uma ação correta na relação contrato é criar um atributo numero_contrato como chave primária, não sendo mais necessários, nessa relação, os atributos cpf_professor e cod_curso.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: E (Errado)

Para entender a correção deste item, é essencial ter conhecimento sobre os conceitos de chaves primárias e integridade referencial no contexto de bancos de dados relacionais. A chave primária é um conjunto de um ou mais campos que identifica de forma única cada registro em uma tabela. Já a integridade referencial assegura que relações entre tabelas permaneçam consistentes, o que significa que, sempre que houver uma chave estrangeira, ela deve referenciar um valor válido de uma chave primária em outra tabela.

O erro na assertiva está ao sugerir que a adição de um atributo numero_contrato como chave primária na relação contrato eliminaria a necessidade dos atributos cpf_professor e cod_curso. Na verdade, estes dois atributos são vitais para manter a integridade referencial com as outras relações mencionadas (professor e curso). O campo cpf_professor em contrato é uma chave estrangeira que se relaciona com a chave primária da tabela professor, enquanto cod_curso se relaciona com a chave primária da tabela curso.

Ainda que numero_contrato possa ser adicionado como uma chave primária para identificar unicamente cada contrato, os outros dois campos devem ser mantidos para preservar a relação entre as tabelas, garantindo a integridade referencial do banco de dados. Portanto, remover os atributos cpf_professor e cod_curso da relação contrato comprometeria as conexões entre as entidades do banco e violaria as regras de integridade referencial.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Errado

Pois se retirar a coluna cpf_professor não será mais possível saber quem é o professor desse contrato.

A tabela contrato é uma tabela que faz a ligação entre as outras duas tabelas que são professor e curso. Desta forma, esta tabela de ligação precisa conter, como chave estrangeira, as chaves primárias das outras tabelas, que são cod_professor e cod_curso.

ERRADO

Com base nas informações fornecidas, a relação "contrato" tem como chaves estrangeiras os atributos "cpf_professor" e "cod_curso", que se referem às chaves primárias das tabelas "professor" e "curso", respectivamente. Portanto, é necessário manter essas chaves estrangeiras para garantir a integridade referencial.

Adicionalmente, a criação de um atributo "numero_contrato" como chave primária não substituiria as chaves estrangeiras existentes, mas poderia ser uma adição útil para identificar exclusivamente cada contrato na tabela.

Portanto, a ação correta para manter a integridade referencial na relação "contrato" seria manter as chaves estrangeiras "cpf_professor" e "cod_curso".

Eu posso até criar uma nova coluna chamada "número_contrato", mas ainda sim eu teria que manter a coluna "cpf_professor" e "cód_curso", pois sem elas não seria possível identificar o professor/curso daquele contrato.

Gab.: Errado

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo