DBUnit数据集按主键集导出

时间:2010-10-15 16:52:24

标签: java dbunit

我尝试使用以下方法通过一组素数键从oracle数据库导出数据集:

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

那扔了我一个45mb的数据文件!!!,检查文件我意识到问题是对带有复合键(6个外键)的表的引用,而不是导出唯一引用的注册表,它花了整个表数据。 ¿我认为这是DBUnit的错误,任何人都知道这种方法的解决方案吗?

1 个答案:

答案 0 :(得分:7)

过去我成功使用Jailer(http://jailer.sourceforge.net/)来提取与DBUnit兼容的数据集。 Jailer有一个GUI,允许您选择要导出的表,更重要的是,从最终数据集特定表中排除。 Jailer可以以XML兼容的DBUnit格式导出数据集。 Jailer的唯一缺点是最初解析数据库结构所需的时间 - 但前提是你有一个庞大而复杂的数据库)。