• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

skcratch

Multiplicidade de Modelo Físico

10 mensagens neste tópico

Viva!

Será que alguém me poderia indicar como se faz a multiplicidade do modelo físico de uma base de dados que foi obtido através do diagrama de classes? É que neste caso a multiplicidade possui algumas restrições e não sei como aplicá-las!

Grato desde já por qualquer ajuda!

Cumps!

;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva!

Enganei-me no post anterior. Eu tenho um diagrama de classes e aplicando as regras fiz o modelo relacional. O que eu gostaria de saber é como fazer a multiplicidade do modelo relacional obtido. Depois de concluído o modelo relacional então sim vou elaborar o modelo físico.

Grato desde já por qualquer ajuda!

Cumps!

:)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Epa, gostava de ajudar mas não percebi o que quisete dizer.

Basicamente é assim:

desenhas um modelo de dados comceptual ( um diagrama Entidade-Relacionamento ).

No fim deste estar desenhado aplicas um conjunto de regras e obtens o modelo físico.

Nomeadamente:

-um relacionamento 1-n ou 1-1 resulta no uso de uma chave estrangeira

-um relacionamento n-n resulta numa tabela extra com as chaves de ambas as tabelas

Basicamente é isto

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva!

Desde já obrigado pela ajuda. O meu ponto de partida é um modelo de classes mas também existem um conjunto de regras que são aplicadas para podermos obter o modelo relacional.

-um relacionamento 1-n ou 1-1 resulta no uso de uma chave estrangeira

-um relacionamento n-n resulta numa tabela extra com as chaves de ambas as tabelas

Será que podias dar um exemplo por favor, que sinceramente não percebi.

Cumps!

:)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Na boa :) Aqui vai.

Imagina que tens uma tabela com professores e outra com disciplinas. Vamos supor que cada cadeira só pode ter um professor mas um professor pode ter mais do que uma cadeira. Neste caso a tabela cadeiras vai ter uma chave estrangeira que relaciona com a tabela professores. Assim as tabelas ficavam mais ou menos assim

PROFESSORES

id

nome

morada

area_cientifica

(etc)

CADEIRAS

id

id_professor  <---chave estrangeira que relaciona com a outra tabela

nome

numero_de_horas

(etc)

Neste caso cada cadeira só pode ter um professor ( relacionamento n-1 ) . Imagina agora que um professor pode ter mais do que uma cadeira e uma cadeira pode ter mais do que um professor ( relacionamento n-n ) . Ficas com tres tabelas, sendo a terceira composta pelas chaves das duas tabelas iniciais. Mais ou menos assim:

PROFESSORES

id

nome

morada

area_cientifica

(etc)

CADEIRAS

id

nome

numero_de_horas

(etc)

DISTRIBUICAO_DOCENCIA  <-- tabela de relacionamento

id_professor

id_cadeira

Assim, sempre que quiseres relacionar um professor com uma cadeira inseres uma linha nesta ultima tabela com os ids correspondentes.

Basicamente é isto. Espero ter ajudado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva!

Antes demais, muito obrigada por toda a ajuda que foi prestada até agora. Depois de esta excelente explicação fiquei com uma pequena dúvida. Neste último caso em que precisamos de uma terceira tabela, como estabelecemos a multiplicidade entre a terceira tabela e aquelas que lhe deram origem?

Grato desde já pela ajuda!

Cumps!

:D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebi bem a pergunta.

Esta terceira tabela só existe para relacionar as outras duas no caso em que o relacionamenteo é n para n

O conjunto dos dois campos dessa tabela em tem que ser único ( não podem haver colunas exactamente iguais ) a partir daí todos os professores podem dar todas as cadeiras ( situação limite )

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva!

O que eu gostaria de saber é como estabelecer a multiplicidade dessa mesma tabela em relação às outras.

Grato desde já pela ajuda!

Cumps!

:D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A 3ª tabela é uma tabela resultante. Não lhe aplicas multiplicidade.

Básicamente a tabela não aparece no DER. Desenhas o DER normalmente, atribuis as cardinalidades, ou multiplicidades, como lhe quiseres chamar, e depois de aplicares as regras a esse DER obténs as tabelas, ou relações, resultantes.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora