Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] Creacion de tablas generales

Estas en el tema de Creacion de tablas generales en el foro de Mysql en Foros del Web. Estoy construyendo el Modelo Entidad Relación de un aplicativo que esta pensado para soportar bastante trafico, modelandola recorde un termino usado llamado generalizacion que dice ...
  #1 (permalink)  
Antiguo 04/03/2013, 13:52
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Creacion de tablas generales

Estoy construyendo el Modelo Entidad Relación de un aplicativo que esta pensado para soportar bastante trafico, modelandola recorde un termino usado llamado generalizacion que dice que si una tabla A y B tienen datos comunes, extraer estos datos en una nueva tabla y dejar los datos que sean exclusivos de cada una de ellas.

Hasta ahi bien, pero mi problema es el siguiente: tengo cuatro tablas una de usuario, otra de salas, y dos de muro, y todas estas apuntan a una sola tabla llamada comentarios...

¿Es correcto hacer esto de esta manera?

O deberia mas bien crear una tabla de comentarios por cada una de las tablas padre...

Espero haberme explicado bien

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #2 (permalink)  
Antiguo 04/03/2013, 14:02
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Creacion de tablas generales

Cita:
Hasta ahi bien, pero mi problema es el siguiente: tengo cuatro tablas una de usuario, otra de salas, y dos de muro, y todas estas apuntan a una sola tabla llamada comentarios...

¿Es correcto hacer esto de esta manera?
¿Cuatro tablas base apuntando a una sola de comentarios?
No.
Esta mal. MUY mal.
Cada una de las tablas base debe tener su propia tabla de comentarios, o bien, los comentarios dependen de esas cuatro.

La generalización refiere a que si una misma entidad puede diferenciarse en ciertos comunes atributos no claves, esos atributos comunes no clave se pueden descomponer en dos o más entidades hijas.
Pero una entidad hija es un caso de herencia, y toda hija debe pertenecer a una entidad base. Y eso no existe en tu caso.
En tu ejemplo tienes USUARIO, SALA y MURO. Son entidades completamente diferentes, cada una de las cuales a su vez tiene o puede tener N comentarios.
Ahora bien. lo que sí puede existir es que un Comentario (entidad), aparezca en un Muro (entidad), que pertenece a un Usuario (entidad) que participa de una Sala (entidad).
Pero en ese esquema no son las otras entidades quienes apuntan al comentario, sino que el comentario tiene FKs no identificatorias, que la relacionan con ellas.

¿Se entiende la distinción?

Lo que no existe aquí es una generalización, ni herencia.

Lo que te falta es en realidad una comprensión de los conceptos Clases, Herencia, jerarquía y Entidades Débiles y Fuertes....

Parece que deberías repasar los fundamentos de las BBDD relacionales.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 04/03/2013 a las 15:03
  #3 (permalink)  
Antiguo 04/03/2013, 14:10
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Creacion de tablas generales

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Pero una entidad hija es un caso de herencia, y toda hija debe pertenecer a una entidad base. Y eso no existe en tu caso.
En tu ejemplo tienes USUARIO, SALA y MURO. Son entidades completamente diferentes, cada una de las cuales a su vez tiene o puede tener N comentarios.
Ahora bien. lo que sí puede existir es que un Comentario (entidad), aparezca en un Muro (entidad), que pertenece a un Usuario (entidad) que participa de una Sala (entidad).
Osea y según entendí, al no haber una relación entre esas entidades principales no pueden apuntar a Comentarios "al mismo tiempo" (refiriéndome al hecho de que no puedo mezclar peras y manzanas), pero puedo usar entidades de comentarios para poder decir que un comentario es hecho por un usuario en una sala por ejemplo, así que en mi caso existirían 4 tablas de comentarios, una por cada relación del usuario con otra entidad

No es así??

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.

Última edición por gnzsoloyo; 04/03/2013 a las 15:02
  #4 (permalink)  
Antiguo 04/03/2013, 14:14
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Creacion de tablas generales

Esa sería la idea...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 04/03/2013, 14:16
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: Creacion de tablas generales

Muchas gracias me quedo claro, es usted todo un caballero

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #6 (permalink)  
Antiguo 04/03/2013, 14:22
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Creacion de tablas generales



__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: tabla, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:56.