是否有可靠的Java库或包可以从一种SQL语法转换为另一种SQL语法?
我做了一些谷歌搜索,找到了 http://www.sqlines.com/online
我很好奇是否有这样的东西,我可以以编程方式使用它来批量执行 500 个查询。具体来说,我对从Oracle到MariaDB很有趣。
SQL的变体是如此极端,以至于我怀疑是否有翻译器可以完成一半以上的工作。 而且您可能需要对CREATE TABLE
进行大量更改。 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/parsing-connection/