-
Um funcionário pode estar em vários projetos diferentes.
Um projeto pode ter diversos funcionários.
Por lógica, terá que ser criada uma tabela (relacionamento) para guardar esse atributo data_da_alocacao_do_funcionario_no_projeto.
Em cada tupla dessa tabela conterá as chaves estrangeiras advindo de funcionário e projeto.
ex:
Tabela Funcionario_Projeto
id_funcionario_projeto
fk_funcionario
fk_projeto
data_da_alocacao_do_funcionario_no_projeto
-
Aqui temos um exemplo clássico do relacionamento N:M, onde podem existir mais de 1 ocorrência entre as entidades. Nesse caso, a regra é clara: Em relacionamentos entre entidades N:M, deve-se criar uma terceira tabela, que conterá, como chaves estrangeiras, a referências as PK das tabelas que se relacionam. Além disso, a data da alocação, é referente a entrada de um funcionário a um projeto, logo, ela deverá ser posta na tabela de relacionamento.
Resposta: E
-
Observe que a característica de data de alocação não diz respeito a somente um funcionário nem a somente um projeto. Um mesmo funcionário pode estar alocado em vários projetos, que podem possuir datas de início diferentes. Assim, faz sentido que essa característica descrita pelo atributo esteja associada à própria alocação, ou seja, ao relacionamento.
Outro exemplo onde isso poderia ocorrer é em uma consulta médica, em que a consulta é um relacionamento entre Paciente e Médico. Veja que a data e a hora da consulta não dizem respeito ao paciente ou ao médico, mas sim à própria consulta.
-
Considerando que o campo data pode assumir diversos valores, por que não poderia ser, também, Multivalorado?