有BNF语法可用于SQL吗?

时间:2019-02-13 22:16:26

标签: sql parsing bnf ebnf

我不想自己创建语法。我确实下载了“语法”,但是它是针对ANTLR或Yacc的非标准格式编写的,并且包含词法分析器语句。我需要花一些时间将两者分开,并为解析器生成器引入正确的语法。

1 个答案:

答案 0 :(得分:2)

有许多适用于解析器生成器的SQL语法,因为大多数SQL处理器使用解析器生成器来生成其解析器。这些可能满足您的需求,也可能无法满足您的需求,具体取决于您对哪种SQL方言感兴趣,以及计划使用哪种解析器生成器。

以下是一些示例。这些都取自各个数据库的官方代码存储库,我认为这避免了避免资源请求的“基于观点的”标准。互联网上还散布着许多非官方的语法,尤其是在Github上,但并非所有语法都是正确的或可用的。