Ir para o conteúdo

CCT-UFCA/Ciência da Computação/Banco de Dados/Modelo entidade relacionamento

De Wikiversidade
Diagrama Entidade Relacionamento bastante simples, demonstrando a relação entre as entidades Aluno e Curso.

O Modelo Entidade Relacionamento (modelo ER) é uma abordagem conceitual para o projeto de bancos de dados, criada por Peter Chen em 1976. Ele utiliza uma representação gráfica para descrever os dados e seus relacionamentos. No modelo ER, os principais elementos são entidades (objetos ou conceitos do mundo real), atributos (características das entidades) e relacionamentos (associações entre entidades). É amplamente utilizado na fase de modelagem de sistemas de informação, servindo como base para a criação de esquemas de bancos de dados relacionais.

Representação gráfica de Modelos Entidade Relacionamento

[editar | editar código]

Na notação originalmente proposta por Peter Chen, que é a mais amplamente utilizada, os principais componentes são:

  • Entidades: representadas por retângulos;
  • Relacionamentos: representados por losangos;
  • Atributos: representados por elipses;
  • Ligações (ou conexões): representadas por linhas, indicando os vínculos entre entidades e seus atributos ou entre entidades por meio de relacionamentos.

Um aspecto fundamental desse modelo é a cardinalidade, que define a quantidade de ocorrências que uma entidade pode ter em relação à outra dentro de um relacionamento. A seguir, explicamos os principais tipos de relacionamentos:

Chaves Primárias e Secundárias

[editar | editar código]

Para entender os tipos de relacionamento é importante entender primeiro o que são chaves primárias e secundárias:

No Diagrama de Entidade-Relacionamento (ER), as chaves primária e secundária são essenciais para garantir a integridade dos dados e as relações entre entidades.

  • Chave Primária (Primary Key ou PK): É um atributo ou conjunto de atributos que identifica de forma única cada instância de uma entidade. Ela não pode ter valores duplicados ou nulos. Cada entidade deve ter uma chave primária para garantir que cada registro seja distinto e facilmente identificado. Exemplo: Em uma entidade "Aluno", o Número de Matrícula de um aluno pode ser a chave primária, pois é único para cada aluno.
  • Chave Secundária ou Chave Estrangeira (Foreign Key ou FK): É um atributo que faz referência à chave primária de outra entidade, criando uma relação entre as duas. Ela não garante unicidade e pode ter valores duplicados ou nulos, mas é fundamental para manter a integridade referencial entre entidades relacionadas. Exemplo: Em uma entidade "Matrícula", a chave secundária poderia ser o Número de Matrícula de um aluno, que se refere à chave primária de "Aluno", estabelecendo um vínculo entre as duas entidades.

Tipos de Relacionamentos em Modelos Entidade Relacionamento

[editar | editar código]
Exemplo de um Diagrama Entidade Relacionamento, muito utilizado na etapa de modelagem de bancos de dados relacionais, já contendo os relacionamentos.

Relacionamento 1:1 (Um para Um)

[editar | editar código]

Nesse tipo de relacionamento, cada registro de uma entidade se relaciona com no máximo um registro da outra, e vice-versa.

  • Exemplo: Uma pessoa tem um passaporte, e cada passaporte pertence a uma pessoa.
  • Implementação no banco de dados: A chave primária (PK) de uma das tabelas se torna chave estrangeira (FK) na outra. A decisão de onde colocar a FK depende de regras do negócio e de considerações como a obrigatoriedade do relacionamento.

Relacionamento 1:N (Um para Muitos)

[editar | editar código]

Esse é o tipo mais comum. Aqui, um registro de uma entidade pode se relacionar com vários registros da outra, mas o inverso não é verdadeiro.

  • Exemplo: Um cliente pode fazer vários pedidos, mas cada pedido está associado a um único cliente.
  • Implementação no banco de dados: A chave primária da entidade do lado "1" é inserida como chave estrangeira na tabela do lado "N".

Relacionamento N:N (Muitos para Muitos)

[editar | editar código]

Nesse relacionamento, vários registros de uma entidade podem se relacionar com vários registros da outra.

  • Exemplo: Um aluno pode se matricular em várias disciplinas, e cada disciplina pode ter vários alunos.
  • Implementação no banco de dados: Cria-se uma tabela intermediária (ou tabela de junção) para representar esse relacionamento. Essa tabela contém as chaves primárias das duas entidades envolvidas, formando uma chave composta. Dessa forma, o relacionamento N:N é transformado em dois relacionamentos 1:N, com a nova tabela no meio.