jueves, 19 de abril de 2007

Problema actualizando la base de datos con dbunit : dbunit Cannot delete or update a parent row:

Bueno pues para que funcione DBUNIt en una base de datos con restricciones de indices, es decir foreigns keys, pues antes de actualizar los datos habría que deshabilitar dichas restricciones de la siguiente forma:
SET FOREIGN_KEY_CHECKS=0, AUTOCOMMIT=0 ===========> DESHABILITAR
SET FOREIGN_KEY_CHECKS=1, AUTOCOMMIT=1 ===========> HABILITAR

SessionFactory ds = (SessionFactory)ctx.lookup(getDataSourceJNDIName());
Connection conexionPrincipal = ds.openSession().connection();

conexionPrincipal.createStatement().execute("SET FOREIGN_KEY_CHECKS=0, AUTOCOMMIT=0");
/**
aquí se harían las operaciones de actualizar la base de datos
**/

conexionPrincipal.createStatement().execute("SET FOREIGN_KEY_CHECKS=1, AUTOCOMMIT=1");

información encontrada en:
http://forum.springframework.org/archive/index.php/t-21957.html

No hay comentarios: