Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: mark182 en 5 Octubre 2014, 22:00 pm



Título: Modelo de la BD del muro de Facebook
Publicado por: mark182 en 5 Octubre 2014, 22:00 pm
Buenas, como estan?

Me gustaria implementar un muro al estilo de facebook. Pero la verdad que no me imagino como serian las tablas del mismo.

En mi muro se van a ver dos tipos de posteos: Estados y Publicidades.
Por lo tanto, como seria el diseño de la BD?

Por ahora lo que hice fue crear las siguientes tablas:

Estados:
id
texto

Publicidad
id
texto

Muro
id_usuario
id_estado
id_publicidad

Pero nose como mostrar los datos.
¿Como seria la consulta para mostrar lo que hay en la tabla muro?
¿Se hace de esta forma o hay una mejor forma de hacerlo?


Gracias!


Título: Re: Modelo de la BD del muro de Facebook
Publicado por: Beakman en 16 Octubre 2014, 20:24 pm
A diferencia de los "estados", supongo que las "publicidades" no tienen un autor. Ahora, los estados tienen que guardar el identificador del usuario, pero no tenés que guardar ese identificador en la tabla muro. De hecho creo que esa tabla ni siquiera es necesaria para tus propósitos.
Mira este diseño:

Código:
Estados
  id
  texto
  id_usuario

Publicidades
  id
  texto

Ahora para mostrar los datos simplemente hacés una consulta como la siguiente.
Código
  1. SELECT id, texto, id_usuario, 'estado' FROM Estados
  2. UNION
  3. SELECT id, texto, NULL, 'publicidad' FROM Publicidades