ANTLR4是否有可用的SQL语法?如果是这样,我在哪里可以找到它?
来自ANTLR维基的链接,但链接已断开:grammar list
答案 0 :(得分:23)
不,在撰写本文时,没有v4 SQL语法。
所有v4语法都将放入以下Github存储库中(据我记得,从ANTLR邮件列表中记得):https://github.com/antlr/grammars-v4
现在这里的v3语法:http://antlr3.org/grammar/list.html
现在有一个用户贡献的MySQL语法:https://github.com/antlr/grammars-v4/tree/master/mysql
答案 1 :(得分:7)
答案 2 :(得分:3)
截至2017年2月6日,有一个用于t-sql的ANTLR4文件,但它是社区维护的,并且不完整,我发现许多SQL语句对SQLServer有效,但不能通过这种语法解析。
答案 3 :(得分:0)
正如其他用户所提到的,可以在线获取SQL语法,但是它们并不完整。我建议最好的方法是使用不完整的语法,并在需要时添加顶部不存在的语法。 例如,如果您需要对join子句进行翻译而该翻译不存在,则只需将其添加在其顶部即可。只要确保您编写的语法不会破坏任何现有的语法
这是我在实习期间所做的事情,在那儿,我不得不制作一个将SAS脚本转换为python的工具。 SAS是专有的,它的语法不可用。因此,我们从头开始构建所有内容。