Cursos / Informática para Internet / Banco de Dados / Aula

arrow_back Aula 04 - Transformações ER para MR

Quinto Passo: mapear atributos multivalorados

Os atributos multivalorados no modelo ER são aqueles em que seu conteúdo é formado por mais de um valor. No exemplo da Figura 2, o atributo Telefone é um exemplo de atributo Multivalorado. Nesse caso, um empregado pode ter mais de um telefone.

Para fazer o mapeamento do atributo multivalorado para o MR, é necessário criar uma nova tabela para armazenar os valores do atributo. Desse modo, o mapeamento de atributos multivalorados envolve os subpassos apresentados a seguir.

  1. Crie uma tabela no MySQL Workbench com o nome do atributo. Por exemplo, a tabela criada poderia se chamar Empregado_Telefones. Caso tenha alguma dúvida para a criação da tabela, consulte a Aula 3.
  2. Crie uma chave estrangeira na tabela criada para referenciar a entidade origem do atributo multivalorado. No exemplo da Figura 2, a entidade origem do atributo multivalorado é a entidade Empregado. Portanto, você deve criar um atributo Matrícula na tabela Empregado_Telefones e definir uma chave estrangeira para esse atributo. Ao final deste subpasso, você deve obter um diagrama parecido com a Figura 7. Exemplo de atributos multivalorados mapeados para o Modelo Relacional.
  3. O próximo subpasso é criar um atributo na tabela recém-criada para armazenar os valores do atributo multivalorado. No caso do nosso exemplo, você deve criar um atributo telefone na tabela Empregado_Telefones. Ao final deste subpasso, você deve obter algo parecido com a Figura 8. Exemplo de atributos multivalorados mapeados para o Modelo Relacional.
  4. Note que a tabela Empregado_Telefones não possui chave primária. Como você sabe, todas as tabelas devem ter chaves primárias para garantir a integridade dos dados. No caso do exemplo da Figura 8, a ausência de chave primária iria permitir que um mesmo telefone fosse cadastrado mais de uma vez. Para evitar tal problema, você deve definir os dois atributos da tabela como chave primária. No caso do exemplo, os atributos Matrícula e Telefone serão chave primária da tabela Empregado_Telefone. Ao final deste subpasso, você deve obter algo parecido com a Figura 9. Exemplo de atributos multivalorados mapeados para o Modelo Relacional.

Após aprender todos esses passos, você estará apto para fazer o mapeamento inicial de um modelo ER para um MR.

Versão 5.3 - Todos os Direitos reservados