6.3 Transformar um Modelo Conceitual em Modelo Relacional (modelo lógico)
O esquema de um Banco de dados relacional (modelo lógico) deve ter no mínimo as relações que formam o Banco, os atributos que as relações possuem e as restrições do modelo.
1º REGRA - TRANSFORMAR ENTIDADE REGULAR EM UM RELAÇÃO
![]() |
|
Em relação ao exemplo acima vamos fazer o primeiro regra para transformação, que é transformar toda entidade regular em uma relação que inclua todos os atributos simples, trata-se de uma tradução inicial que na seqüência poderá ser fundida com outra entidade.
Para representar o modelo lógico vamos utilizar as mesmas notações utilizadas na bibliografia do HEUSER que será explicado neste primeiro exemplo:
![]() | ![]() | |
|
Pessoa (Codigo, Sexo, Nome) | ||
![]() | ![]() |
Com isso a entidade PESSOA é transformada em uma tabela PESSOA e cada atributo da entidade é transformado em uma coluna da tabela sendo que o atributo chave primária será identificado com um sublinhado.
2º REGRA – TRANSFORMAR UMA ENTIDADE FRACA
|
|
|||||||||
Dependente(Numero, Codigo, Data_Nascimento, Nome) |
3º REGRA – TRANSFORMAR RELACIONAMENTOS BINÁRIOS 1:1

Quando temos este tipo de relação, há algumas opções para a transformação:
1º Opção: Escolher uma das tabelas e inserir nela como chave estrangeira a chave primária do outra tabela.
No nosso exemplo acima, temos a relação entre uma entidade pessoa e departamento.
![]() | ![]() | |
|
Desta forma estamos apenas transformando as entidade regulares em tabelas: | ||
![]() | ![]() |
O próximo passo é analisar a relação existente. Como o relacionamento é binário 1:1 vamos usar a 1º opção e inserir em uma das entidades a chave primária da outra. É melhor escolher, entre as duas entidades, aquela com participação total, ou seja, a entidade de departamento que preve a obrigatoriedade de ter um gerente. Ainda na entidade escolhida para receber a chave estrangeria também inserimos os atributos do relacionamento.
![]() | ![]() | |
|
Pessoa(Codigo, Nome, Sexo) | ||
![]() | ![]() |
Observação da notação
Para representar a chave estrangeira, após a definição da relação que contém chave estrangeira descrevemos:
<nome da coluna ch. Estrangeira> referencia <nome da relação>
2º Opção: Nesta opção, pode-se fazer uma fusão entre as entidades participantes. Normalmente ocorre quando as duas entidades têm participação total, ou seja, a cardinalidade mínima nas duas entidades é 1.

Neste exemplo, fizemos a fusão das duas entidades em uma única relação incluindo os atributos das duas entidades e do relacionamento. No exemplo acima tivemos que alterar o nome da equipe para NomeEquipe já que o atributo de congresso também estava identificado por Nome.
| ||||||
| ||||||
4º REGRA – TRANSFORMAR RELACIONAMENTOS BINÁRIOS 1:N
Para cada tipo de relacionamento Binário 1:N identificar a entidade participante do lado N e inserir como chave estrangeira a chave primária do outra entidade. Isso é feito porque cada instância de entidade do lado N está relacionada a no máximo uma instância do lado 1.

Pessoa (Codigo,Nome, Sexo, Numero)
Numero referencia Departamento
Departamento(Numero, Nome)
No exemplo acima, inserimos a chave primária de departamento como chave estrangeira na relação Pessoa.
![]() |
|
Tabela Proposta por: HEUSER, Carlos Alberto. Projeto de Banco de Dados. Porto Alegre: Sagra Luzato, 1999. |
|
5º REGRA – TRANSFORMAR RELACIONAMENTOS BINÁRIOS N:M
Neste caso, para cada tipo de relacionamento cria-se uma tabela nova. Inserir como chave estrangeira as chaves primárias das duas tabelas que fazem parte e as duas chaves irão representar a chave primária da nova tabela.
Também devemos incluir todo tipo de atributo que tiver na relação entre as entidades.

Pessoa(Codigo, Nome, Sexo)
Projeto(Numero, Nome)
Trabalha(Codigo, Numero, horas)
Código referencia Pessoa
Numero referencia Projeto
O Diagrama acima gerou 3 relações, uma para entidade pessoa outra para entidade projeto e outra para a relação trabalha.
A relação trabalha ficou composta de duas chaves primárias, código da entidade Pessoa e Numero da entidade Projeto. E ainda faz parte desta relação o atributo horas do relacionamento trabalha.

6º REGRA – TRANSFORMAR RELACIONAMENTOS N-ário:
Para transformar relacionamentos n-ários deve seguir os seguir os seguintes passos:


Seguindo os passos para a transformação acima, temos o seguinte modelo relacional:
Produto(CodProd, Nome)
Cidade(CodCid, Nome)
Distribuidor(CodDistr, Nome)
Distribuição(CodProd, CodCid,CodDistr, DataInicio)
CodProd referencia Produto
CodCid Referencia Cidade
CodDistr Referencia Distribuidor
7º REGRA – TRANSFORMAR GENERALIÇÕES / ESPECIALIZAÇÕES
Existem duas opções no caso de Generalização / Especialização:
1º) Utilizar uma tabela para cada entidade
2º) Utilizar uma tabela para toda Generalização / Especialização

1º caso – Uma relação para cada entidade
Acrescentar à chave primária da tabela correspondente a entidade genérica, em cada tabela correspondente a uma entidade especializada.
Carro (Placa, Ano, Modelo, Marca)
Placa referencia Veiculo
Caminhao(Placa, Capacidade, Marca)
Placa referencia Veiculo
2º caso – Fusão em um única relação
Veiculo (Placa, Ano, Modelo, MarcaCarro, Capacidade, MarcaCaminhao)
No exemplo de modelo relacional acima temos a chave primária Placa que foi derivada da entidade Generalizada e todos os atributos das entidades especializadas se tornaram colunas na tabela.