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

[SOLUCIONADO] tabla madre puede ser referenciada en una relacion?

Estas en el tema de tabla madre puede ser referenciada en una relacion? en el foro de Bases de Datos General en Foros del Web. hola buenas para todos mis leyentes, le escribo con la finalidad de saber lo siguiente es posible realizar con una tabla padre(Herencia) una relacion UNARIA? ...
  #1 (permalink)  
Antiguo 27/12/2014, 20:05
 
Fecha de Ingreso: enero-2014
Mensajes: 47
Antigüedad: 10 años, 3 meses
Puntos: 0
tabla madre puede ser referenciada en una relacion?

hola buenas para todos mis leyentes, le escribo con la finalidad de saber lo siguiente

es posible realizar con una tabla padre(Herencia) una relacion UNARIA? esto es posible?

tengo una herencia de tablas(Padre e Hijas)

Tabla Madre (Pieza)
Tablas Hijas
  1. procesador
  2. ram
  3. tarjeta madre
  4. disco duro

el problema comienza cuando utilizo la tabla pieza y realizo una relacion UNARIA(involutiva) de N/M llamada compatibilad ya que quiero manejar la compatibildad entre las piezas pero me dice que el valor insertado en la tabla compatibilidad no coinciden con la tabla pieza ¿esto porque se debe?

sin mas que decir me despido y gracias
  #2 (permalink)  
Antiguo 28/12/2014, 01:23
(Desactivado)
 
Fecha de Ingreso: enero-2013
Mensajes: 289
Antigüedad: 11 años, 3 meses
Puntos: 10
Respuesta: tabla madre puede ser referenciada en una relacion?

dos tablas con relación de 1 a 1 a menudo se suelen juntar en una sola
  #3 (permalink)  
Antiguo 28/12/2014, 03: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, 5 meses
Puntos: 2658
Respuesta: tabla madre puede ser referenciada en una relacion?

Se juntan en una si la segunda corresponde a datos mandatorios, si son opcionales la normalización de bases de datos indica que sean separadas.
__________________
¿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; 30/12/2014 a las 16:40
  #4 (permalink)  
Antiguo 28/12/2014, 18:28
 
Fecha de Ingreso: enero-2014
Mensajes: 47
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: tabla madre puede ser referenciada en una relacion?

yo inserto los datos en las tablas hijas pero al parecer en la tabla compatibilidad no me deja insertar los valores precisamente xq no es propia de la tabla pieza alli se cargan los datos pero de alguna manera no deja

tengo la tabla

pieza(modelo,nombre,fabricante) pk modelo

procesador(id,arquitectura,velocidad,capacidad)pk id hereda los atributos de pieza

tarjeta_madre(id,socket,puertos) pk id hereda los atributos de pieza

compatibilidad(modelo_p,modelo_c) pk compuesta y ambas son fk de la tabla pieza(modelo)

=(
  #5 (permalink)  
Antiguo 28/12/2014, 19:31
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, 5 meses
Puntos: 2658
Respuesta: tabla madre puede ser referenciada en una relacion?

Vamos por parte: Lo que estás definiendo, más allá de ser una relación Padre-Hijo entre tablas, es una relacion de dependencia funcioanl entre dos entidades. En consecuencia debes respetar esa dependencia, y por eso no puedes ingresar datos en las tablas hijas sin ingresarlos en la tabla padre primero.
Ahora bien, analizando lo que describes, una Pieza puede ser Procesador o TarjetaMadre. Esto implica que para ser una u otra primero se debe definir como Pieza, y en ese caso no Procesador ni TarjetaMadre tienen PK propia, sino heredada de Pieza.
¿Eso lo tienes claro?

Cita:
Pieza(pieza_id, modelo, nombre, fabricante_id)
Procesador(pieza_id, arquitectura, velocidad, capacidad)
TarjetaMadre(pieza_id, socket, puertos)
Compatibilidad(pieza_id_1, pieza_id_2)
Usando denominaciones mnemotécnicas así es más sencillo ver la relación.
En ese esquema, como dije, debes si o si ingresar primero la pieza, y luego el Procesador o TarjetaMadre. Es obligatorio.
Ahora bien, en este modelo te está faltando una entidad que represente al equipo que se construye, donde se aplicarán luego las reglas de negocio que expresen: Un equipo tiene un Procesador y una sola Tarjeta Madre", o cosas asi. Y ten en cuenta que no todas las reglas del negocio se administran en la base de datos. Muchas requieren interaccion entre la capa de negocio y la capa de datos.
¿Existe esa entidad en tu modelo de sistema?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 30/12/2014, 14:50
 
Fecha de Ingreso: enero-2014
Mensajes: 47
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: tabla madre puede ser referenciada en una relacion?

si una tabla equipo pero aun no he definido su estructura supongo q es una tabla que llame los id de cada pieza pero entonces si se puede realizar la relacion unaria y a su vez establecer una relacion de herencia a una misma tabla(pieza) =)

Última edición por NelsonJPG; 30/12/2014 a las 14:56

Etiquetas: madre, tabla
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 04:39.