Duvida entre relacionamento entre entidades em um BD

3 respostas
MarcioProgramador

Olá tenho uma dúvida quanto a este modelo er… na dúvida coloquei a imagem aqui.

Na prática a idéia que eu tenho é a seguinte.:

Um usuário pode possuir no mínimo 0 ou no máximo N amigos
Amigos pertencem a no mínimo 1 ou no máximo N usuários.

Mas eu penso que um usuário pode ser tbm um amigo, então acho que a idéia aqui seria pensar em um auto-relacionamento envolvendo somente a entidade usuário.

A minha dúvida é com relação a este desenho e a idéia que postei acima… estou correto em faze-lo assim?

P.s.: Desculpas aos moderadores caso este post tenha sido na área errada. Obrigado. :slight_smile:

3 Respostas

drsmachado

Ser amigo dele mesmo?
O modelo foge do que você disse a respeito do usuário ter [0, ] amigos, ela mostra [1,] amigos.

No meu entender, todo usuário pode ser um amigo e todo amigo é, com certeza, um usuário (regra básica em um sistema de rede social).

A modelagem do relacionamento deve contemplar o “pior caso”, ou seja, aquele em que o máximo de recursos será utilizado.
Neste caso, a relação é M:N, ou seja, muitos para muitos (se existem 10 usuários e todos são amigos entre si).

Considerando isto, apenas com ressalva a indicação de Usuario [1, *], o desenho está correto.

MarcioProgramador

realmente o que vc falou é coerente, eu modifiquei a figura… estou utilizando o dbdesigner (ele nao permite modificar a cardinalidade nos relacionamentos infelizmente ou nao estou sabendo, não sei hehehe).

o desenho ficou assim…

agora a ideia esta que um usuário possui no minimo 1 e no máximo N… tbm pode caber?

este é um projeto para a pós-graduação de um amigo… estou ajudando ele com o banco de dados.

Obrigado.

MarcioProgramador

???

Criado 11 de maio de 2011
Ultima resposta 11 de mai. de 2011
Respostas 3
Participantes 2