为什么 ?
我有一个很大的 Oracle 表。我想测试一些 DAO 方法。为此,我使用 dbunit。
问题
我想使用 sql 查询将现有数据库的子集提取为 dbunit 平面 xml 文件。查询示例:
Select
t1.field1 as field1, t1.field2 as field2, t2.field3 as field3
From
table1 t1
Join table2 t2 on t1.fieldX=t2.fieldX
Where
t1.field6='value' and t2.field8='value2'
在这种情况下,它将提取作为查询结果的 table1 和 table2 的所有记录,然后它还会提取这些记录的所有依赖项。
我试过的
- 狱卒
我已经测试了 Jailer,这是一个很好的工具。问题是我只能对一个表进行查询并提取它以保持关系。我的 sql 查询有几个连接,以及使用此软件无法解决的条件。
- DBUnit 生成
我也尝试过直接使用 DBUnit 来生成数据集,但它需要做很多工作,因为我们不能直接从 sql 查询生成子集,只能通过在每个表上指定一系列小查询来生成。我有很多连接和条件,所以这不是一个可接受的解决方案。
问题
如何使用sql 查询作为导出的基础来生成数据库的子集(并将其导出到 dbunit 平面 xml 文件中) ?