簡體   English   中英

如何使用SQL查詢將數據庫的子集提取到dbunit文件中?

[英]How to extract a subset of a database into a dbunit file using a sql query?

為什么呢

我有一張大桌子。 我想測試一些DAO方法。 為此,我使用dbunit。

問題

我想使用sql查詢將現有數據庫的子集提取為dbunit flat 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的所有記錄,然后還提取這些記錄的所有依賴關系。

我嘗試過的

  1. 獄卒

我已經測試過Jailer,這是一個很好的工具。 問題是我只能對一個表進行查詢並提取保持關系的查詢。 我的sql查詢具有多個聯接,並且其中的條件無法使用此軟件解決。

  1. DBUnit生成

我也嘗試過直接使用DBUnit來生成數據集,但是它需要大量工作,因為我們不能直接從sql查詢中生成子集,而只能通過在每個表上指定一系列小查詢來生成。 我有很多人加入,並且在哪里有條件,所以這不是一個可以接受的解決方案。

如何使用sql查詢作為導出的基礎來生成數據庫的子集(並將其導出到dbunit flat xml文件中)?

我認為您想要的可能超出了DBUnit的范圍。

我認為最好的方法是設置一系列處理聯接的視圖,並通過該視圖提取數據。 一旦有了視圖,就可以使用SQL查詢提取數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM