regras de produÇÃo do modelo lÓgico. 9 regras para transformaÇÃo do modelo conceitual em...
TRANSCRIPT
REGRAS DE PRODUÇÃO DO MODELO LÓGICO
9 REGRAS PARA TRANSFORMAÇÃO DO MODELO CONCEITUAL EM LÓGICO
R1: Entidade Simples
R2: Entidade fraca
R3: Generalização/Especialização
R4: Relacionamentos 1:1
R5: Relacionamentos 1:N
R6: Relacionamentos N:N
R7: Atributos Multivalorados
R8: Relacionamentos N-ários
R9: Entidade Associativa
REGRA 1: ENTIDADE SIMPLES
PESSOA nomecodigoendereco
Para cada entidade descrita no DER cria-se uma tabela.
Cada atributo da entidade torna-se uma coluna desta tabela.
Cada atributo identificador da entidade torna-se a chave primária da tabela.
REGRA 2: ENTIDADE FRACA
FUNCIONARIO possui DEPENDENTE
codigonome codig
o
nome
sexo
(1,1) (0,n)
A entidade fraca depende de outra entidade para existir.
A entidade fraca é representada por um traço mais forte na ligação.
Na tabela da entidade dependente inclui-se como chave primária e estrangeira a chave primária da tabela da entidade proprietária
REGRA 3: GENERALIZAÇÃO/ESPECIALIZAÇÃO
Para a implementação de hierarquias de generalização/especificação, há duas alternativas:
1) usar uma tabela para cada entidade;
2) usar uma única tabela para toda a hierarquia de generalização/especialização.
ALTERNATIVA 1: USAR UMA TABELA PARA CADA ENTIDADE.
CONTA saldonumero
limitemax_saque
CONTA -CORRENTE
taxa_jurosPOUPANCA
Nessa alternativa cria-se uma tabela para cada entidade da hierarquia.
Nas tabelas das sub-entidades tem-se como chave primária e estrangeira a chave primária da entidade genérica
ALTERNATIVA 2: USAR UMA ÚNICA TABELA PARA TODA A HIERARQUIA DE GENERALIZAÇÃO / ESPECIALIZAÇÃO.
CONTA saldonumero
limitemax_saqu
e
CONTA -CORRENTE
taxa_jurosPOUPANCA
Nessa alternativa são criadas apenas as tabelas referentes as sub-entidades.
Inclui-se os atributos da entidade genérica e os atributos da própria entidade em uma única tabela.
REGRA 4: RELACIONAMENTOS 1:1
Em relacionamentos 1:1 temos duas maneiras de implementação:1) Adição de colunas;2) Tabela própria.
ALTERNATIVA 1: ADIÇÃO DE COLUNA
HOMEM casamento
MULHER
identidade
nome identidade
nome
(0,1) (0,1)
data regime
Adiciona a uma das tabelas como chave estrangeira a chave primária da outra tabela.do relacionamento.
Incluir na tabela os atributos referentes ao relacionamento.
ALTERNATIVA 2: TABELA PRÓPRIA
HOMEM casamento
MULHER
identidade
nome identidade
nome
(0,1) (0,1)
data regime
Nessa alternativa cria-se uma tabela própria para o relacionamento.
A chave primária de ambas as tabelas são chaves estrangeiras na tabela do relacionamento.
Tanto a coluna identM quanto identH podem ser escolhidas para serem chave primária.
Neste caso foi escolhido a coluna identM.
REGRA 5: RELACIONAMENTOS 1:N
Em relacionamentos 1:N também temos duas maneiras de implementação:
1) Adição de colunas; 2) Tabela própria.
ALTERNATIVA 1: ADIÇÃO DE COLUNAS
FINANCEIRA financia VENDA
codigonome id
data
(0,1) (0,n)
Taxa de juros
Nº de parcelas
Nessa alternativa acrescenta-se a chave primária da outra tabela e os possíveis atributos do relacionamento.
Identifique a entidade que tem a cardinalidade N.
ALTERNATIVA 2: TABELA PRÓPRIA
FINANCEIRA financia VENDA
codigonome id
data
(0,1) (0,n)
Taxa de juros
Nº de parcelas
Nessa alternativa cria-se uma tabela própria para o relacionamento.
A chave primária das outras duas tabelas serão chaves primárias e estrangeiras na tabela do relacionamento.
REGRA 6: RELACIONAMENTOS BINÁRIO N:N
Para relacionamentos N:N cria-se uma tabela própria para o relacionamento
ENGENHEIRO atuacao PROJETO
cd_engenheiro
nome cd_projeto
titulo
(0,n) (0,n)
ds_funcao
Essa tabela é composta pelas chaves primárias das tabelas participantes como chaves primárias e estrangeiras mais o atributo do próprio relacionamento.
A chave primária da tabela é a combinação das chaves estrangeiras.
REGRA 7: ATRIBUTOS MULTIVALORADOS
CLIENTE
codigonome
Nº telefone (0,n)
Para cada atributo multivalorado cria-se uma nova tabela.
Inclui-se na tabela o próprio atributo e a chave primária da tabela que o tem como atributo.
REGRA 8: RELACIONAMENTOS N-ÁRIOS
cd_projeto
(0,n)nomecd_fornecedor
FORNECEDOR
nome
cd_peca
PECA(0,n) (0,n)
fornece
nomePROJETO
Cria-se uma tabela própria para o relacionamento com as chaves primárias das tabelas participantes como chaves estrangeiras e primárias.
REGRA 9: ENTIDADE ASSOCIATIVA
MEDICO PACIENTECONSULTA n n
codigo nome codigonomedat
ahora
solicita
EXAMEScodigodescrição
Em um relacionamento N:N cria-se uma tabela para cada entidade e uma tabela própria para o relacionamento.
Com a necessidade de relacionar o resultado do relacionamento Consulta com outra entidade cria-se uma entidade associativa.
ds_resultado
Para isso o relacionamento Consulta torna-se uma entidade e relaciona-se com a entidade Exames.
n
n