2012-11-22 91 views
2

Java應用程序需要支持數據庫Oracle,DB2和MSS。涉及sql函數的某些查詢的語法在不同的數據庫中有不同的語法。例如:oracle中的NULLIF()可能不適用於MSS。是否有任何開源SQL解析器可以解析並將查詢字符串轉換爲數據庫特定的SQL?好的開源SQL解析器?

+0

想這是不太可能有開放源代碼軟件工具有任何接近這樣的宗旨,爲商業產品詳盡的支持。不僅SQL方言有所不同,而且還有專有的重要擴展,例如向SQL規劃者指定提示的方式。 –

+0

你想做什麼? – hd1

回答

0

@ hd1有一個正確的問題:你想完成什麼?因爲如果您的目標不是解析SQL,只是使用不同的DB來存儲實體,例如JPA (Java Persistence API)庫支持JPQL (Java Persistence Query Language),即數據庫不可知(或應該是)。

鏈接:

+0

不,這不是使用不同的數據庫來存儲實體的問題。我的要求是能夠解析sql字符串並使其在所有三個數據庫中都能正常工作。 –