2013-02-28 58 views
0

我想複製我的MySQL表hsqldb爲了在我的JPA/Hibernate項目中運行一些單元測試。是否可以使用mysql轉儲填充hsqldb數據庫?

目前只有兩個表,但我不能在hsqldb中創建。我使用的示例代碼從春天文檔運行測試用例之前schema.sql文件腳本:

db = new EmbeddedDatabaseBuilder().addDefaultScripts().build(); 

但它總是失敗,「意外令牌」例外與令牌從「數據庫」。「(」。

有MySQL的轉儲轉換到的東西,HSQLDB會明白的一個簡單的方法是什麼?或者我應該填充測試數據庫一些其他的方式?

回答

1

我曾多年HSQL和MySQL數據庫,也沒有工具我知道將MySQL轉儲轉換爲hsqldb腳本,我在這裏看到兩個解決方案:

  1. 製作腳本或將MySQL轉儲轉換爲hsqldb腳本的程序。您可以按照步驟列表在這個崗位做: How to load mysql dump to hsqldb database? 使用這兩種反應 https://stackoverflow.com/a/3813164/891479https://stackoverflow.com/a/7791340/891479 作爲第一個是不完整的。
  2. 製作一個連接到兩個DB的小程序,將你的MySQL表加載到對象中並填充你的hsqldb。

我們總是使用第一種解決方案,它可能是最簡單的解決方案。

+0

感謝您的建議。同時,我發現DBUnit及其xml定義現在已足夠,而不是試圖複製架構。 – wannabeartist 2013-03-05 10:06:58

相關問題