Home - www.devmedia.com.br

Tecnologias de Banco de Dados e Modelagem de Dados
Parte Final

Neste artigo, aprenderemos a identificar entidades e relacionamentos, além dos conceitos de generalização/especialização e entidade associativa.

Para deixarmos o modelo de entidade e relacionamentos mais preciso, é necessário que haja uma forma de distinguir uma ocorrência da entidade das demais ocorrências da mesma entidade. Sendo assim, cada entidade deve possuir um identificador. Há várias formas de identificarmos entidades. Observe o modelo abaixo:

Neste caso, a entidade aluno possui um único identificador (código). Em outras palavras, cada aluno deve possuir um código diferente.

Existem situações onde é necessário mais de um atributo para identificar determinada entidade. Observe:

Imagine uma biblioteca onde os livros ficam armazenados em prateleiras. Estas prateleiras encontram-se organizadas em corredores. Dessa forma, para identificar uma prateleira é necessário conhecer seu número, além do número do corredor correspondente. Observe o modelo abaixo:

Aqui, o identificador da entidade dependente é composto do atributo NÚMERO SEQÜÊNCIA, além do empregado ao qual o dependente está relacionado. Neste caso, estamos diante de um relacionamento identificador. O relacionamento identificador é identificado por uma linha mais densa.

Vimos que o identificador de entidade corresponde a um conjunto de atributos e relacionamentos cujos valores diferenciam cada ocorrência de entidade. No caso de relacionamentos, em geral a identificação ocorre através das ocorrências das entidades que fazem parte dele. Observe o exemplo:

O modelo mostra que para cada par (analista, projeto) há no máximo um relacionamento de alocação.

No entanto, há casos onde pode ser necessário relacionar ocorrências de mesmas entidades mais de uma vez. Por exemplo, em um modelo de consultas médicas, determinado paciente pode realizar consultas mais de uma vez com o mesmo médico. Neste caso, podemos utilizar um atributo identificador no relacionamento (data/hora).

 

Generalização /Especialização:

No mecanismo de generalização, atributos comuns a entidades de mais baixo nível são representados uma única vez na entidade de mais alto nível. Observe os exemplos.

Existem dois tipos de generalização/especialização: Total (representada pela letra T) e Parcial (representada pela letra P):

• na Total, para cada ocorrência da entidade genérica existe sempre ocorrência em uma das entidades especializadas;

• na Parcial, nem toda ocorrência da entidade genérica corresponde a uma entidade especializada.

 

Entidade associativa:

Em alguns casos, é necessário que associemos uma entidade com a ocorrência de um relacionamento. O modelo de entidades e relacionamentos não permite relacionamentos entre relacionamentos, somente entre entidades. A idéia da entidade associativa é tratar um relacionamento como se ele fosse uma entidade. Observe o modelo abaixo:

Se desejarmos controlar os medicamentos receitados pelo médico em determinada consulta, temos que relacionar a entidade medicamento com o fato de ter havido uma consulta (relacionamento consulta).

Como não podemos fazer isso diretamente, indicamos que o relacionamento consulta é uma entidade associativa, através de um retângulo em volta do relacionamento.

Neste caso, para determinada consulta, pode haver ou não a emissão de medicamentos.

Bibliografia consultada:
Projeto de Banco de Dados
Carlos Alberto Heuser
Editora Sagra Luzzato

Nesta série de três artigos, vimos, de forma resumida, alguns conceitos da área de banco de dados, além dos componentes do modelo de entidade e relacionamento. É necessário que você saiba diferenciar os elementos do modelo de entidade e relacionamento para assim compreender melhor a atividade de mapear corretamente conceitos do mundo real para o diagrama.

Espero ter contribuído para seu aprendizado!!

Até a próxima !


 

Reinaldo Viana Alvares (reinaldo@sqlmagazine.com.br) é Tecnólogo em Processamento de Dados pela UNAMA - Universidade da Amazônia, especialista em Análise de Sistemas pela UFPA - Universidade Federal do Pará, mestrando em computação pela UFF - Universidade Federal Fluminense, professor da UNISUAM – Sociedade Unificada de Ensino Superior Augusto Motta e editor da revista SQL Magazine.

  Funçoes de Data no SQL Server    
  Banco de Dados e Modelagem de Dados - Parte Final    
  Banco de Dados e Modelagem de Dados - Parte 2    
  Banco de Dados e Modelagem de Dados - Parte 1    
  Solução do Desafio SQL    
  Desafio SQL    
  Boas-Vindas    
     

 

Todos os direitos reservados: DevMedia Group
SQL Magazine - 2004