数据库
首页 > 数据库> > mysql – 在ANTLR中编写SQL解析器有哪些挑战?

mysql – 在ANTLR中编写SQL解析器有哪些挑战?

作者:互联网

我正在尝试定义计划并估计实现SQL的MySQL方言的ANTLR解析器所需的工作量.基本上,它归结为将YACC解析器语法从MySQL发行版(sql_yacc.yy)转换为ANTRL语法.

它只是看起来如此直截了当吗?我发现语言语法的某些方面可能需要更多的开发和测试:

> ANTLR不接受左递归
>数字文字将需要自定义Java代码来基于值来转换类型
> ……

您知道,遇到或期待的任何其他挑战?

解决方法:

在此之前,您应该知道这是一项工作无法在几天或几周内完成,而是在几个月内完成.这是一个sql解析器库,您可以在创建自己的解析器时参考.

http://www.sqlparser.com/

标签:mysql,sql,parsing,antlr,yacc
来源: https://codeday.me/bug/20190630/1333895.html