2010-10-15 16 views
5

me trató de exportar un conjunto de datos a partir de una base de datos Oracle mediante un juego de llaves primery usando:DBUnit exportación de datos por el conjunto de clave primaria

TablesDependencyHelper.getDataset(connection, fullTableName , 
        new TreeSet(Arrays.asList(
         new BigDecimal[]{new BigDecimal(1)}))); 

Eso me lanza un archivo de datos de 45 MB !!!, el control de la archivo me doy cuenta de que el problema era una referencia a una tabla con clave compuesta (6 claves externas), en lugar de exportar el registro referenciado único, tomó toda la tabla de datos. ¿Creo que esto es un error de DBUnit, alguien sabe una solución para este enfoque?

+0

¿Esperaba que solo se exportaría la referencia a la tabla, en lugar de toda la tabla? ¿Tienes una clave externa que depende de esa tabla? – blueberryfields

Respuesta

7

En el pasado he utilizado con éxito Jailer (http://jailer.sourceforge.net/) para extraer datasets compatibles con DBUnit. Jailer tiene una GUI que le permite seleccionar las tablas que desea exportar y, lo que es más importante, excluir de las tablas específicas del conjunto de datos final. Jailer puede exportar conjuntos de datos en el formato DBUnit compatible con XML. El único inconveniente de Jailer es el tiempo que lleva analizar inicialmente la estructura de su base de datos, pero solo si tiene un db grande y complejo.

Cuestiones relacionadas