Foros del Web » Programación para mayores de 30 ;) » Java »

Eliminar en cascada con Hibernate

Estas en el tema de Eliminar en cascada con Hibernate en el foro de Java en Foros del Web. Hola, tengo una dua con respecto a la eliminación en cascada con Hibernate y espero me puedan ayudar. Tengo un método que trata de borrar ...
  #1 (permalink)  
Antiguo 04/02/2009, 14:23
Avatar de Etrusco  
Fecha de Ingreso: enero-2009
Ubicación: Edo Mex
Mensajes: 5
Antigüedad: 15 años, 3 meses
Puntos: 0
Pregunta Eliminar en cascada con Hibernate

Hola, tengo una dua con respecto a la eliminación en cascada con Hibernate y espero me puedan ayudar. Tengo un método que trata de borrar un registro en la BD, el id del registro está propagado en otras tablas. Supongamos que tengo la tabla usuario y esta está asociada con una tabla status. Cuando trato de eliminar el registro funciona correctamente es decir, borra los registros de la tabla status que esten asociados con el usuario y finalmente, borra el usuario. El problema se presenta cuando los registros de la tabla status tienen relación con alguna otra tabla, por ejemplo, la tabla error_status. Es ahí dónde me tira el error de Oracle:

Código:
ORA-02292: integrity constraint (CONF.REFT_STATUS32) violated - child record found
REFT_STATUS32 es el nombre que le dimos a la llave foranea en la tabla error_status.
Si alguno de ustedes tiene una idea de como solucionar esto, se lo agradeceré mucho. Saludos.
  #2 (permalink)  
Antiguo 04/02/2009, 19:55
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: por ahi!!!
Mensajes: 113
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Eliminar en cascada con Hibernate

podes tambien subir el .hbm o los annotations? tenes error_status mapeada???
  #3 (permalink)  
Antiguo 06/02/2009, 11:56
Avatar de Wayern  
Fecha de Ingreso: septiembre-2008
Ubicación: Aguascalientes
Mensajes: 65
Antigüedad: 15 años, 7 meses
Puntos: 4
Respuesta: Eliminar en cascada con Hibernate

Lo más sencillo es que encuentres las listas de datos que son hijos de tu segunda tabla y sobrecarges el método getHibernateTemplate().delete para que borres esas listas. Ojalá que te sirva.
Saludos.
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 19:52.