是否有可靠的 Java 库或包可以将一种 SQL 语法转换为另一种?
我做了一些谷歌搜索,发现http://www.sqllines.com/online
我很好奇是否有类似的东西可以通过编程方式批量执行 500 个查询。具体来说,我对从 Oracle 转到 MariaDB 很感兴趣。
是否有可靠的 Java 库或包可以将一种 SQL 语法转换为另一种?
我做了一些谷歌搜索,发现http://www.sqllines.com/online
我很好奇是否有类似的东西可以通过编程方式批量执行 500 个查询。具体来说,我对从 Oracle 转到 MariaDB 很感兴趣。
您也许可以使用 jOOQ。它支持许多后端,最近有了一个解析器,可以解析 jOOQ 支持的方言的超集。它目前被标记为实验性的,但仍可用于一次性翻译工作。
以下是解析器的文档:https ://www.jooq.org/doc/latest/manual/sql-building/sql-parser/
这里有一个在线翻译器,您可以尝试看看它是否适合您的需求:https ://www.jooq.org/translate/
它还支持称为解析连接的东西,它是 JDBC 连接的包装器,可将 SQL 即时转换为您选择的方言:https ://www.jooq.org/doc/latest/manual/sql-execution /解析连接/
SQL 的变体非常极端,以至于我怀疑是否有翻译器可以完成一半以上的工作。您可能需要对CREATE TABLE
. Oracle 拥有许多 MariaDB 中根本不存在的特性。
所以......你最好学习两种变体并手动编码替换。这可能包括去除旧的垃圾(一件好事)和/或必须发明新的轮子(可能是一个挑战)。