首页 > 解决方案 > 是否有可用于 SQL 的 BNF 语法?

问题描述

我宁愿不自己创建语法。我确实下载了一个“语法”,但它是用 ANTLR 或 Yacc 的非标准形式编写的,它包含词法分析器语句。我需要一些时间来将两者分开并为解析器生成器介绍正确的语法。

标签: sqlparsingbnfebnf

解决方案


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

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


推荐阅读