猿问

SQL解析器Java库

SQL解析器Java库

是否有用于解析SQL语句的开源Java库?

如果可能的话,它应该是可定制的或足够灵活的,以便也能够解析(或至少忽略)特定于供应商的语法(例如Oracle表空间定义或MySQL的Limit子句)。

如果没有,严格遵守SQL标准也很好。

最新情况:我需要这个做两件事:

  • 向非SQL数据库提供SQL接口(映射到内部api调用)
  • 在SQL进入实际数据库之前重写它(例如Oracle)


达令说
浏览 521回答 3
3回答

繁花不似锦

ANTLR 3有ANSI SQL语法可用。您可以使用它来创建自己的解析器。ANTLR 4有SQL语法.

慕标5832272

JSqlParser普雷斯托解析器是使用ANTLR 4编写的,并且有自己的从解析器构建的不可变的AST类。AST有个访客和漂亮的打印机。

缥缈止盈

解析器如果需要解析器,则在代码基中应该有一个解析器。阿帕奇德比.处理特定于供应商的sql您可能想看看.本机()方法,您可以在JDBC连接对象上传递与供应商无关的查询,这些查询将被后处理为特定于供应商的查询。
随时随地看视频慕课网APP

相关分类

Java
我要回答