1.概述

最近,有同学留言关于SQL解析器方面的问题,今天笔者就为大家分享一下SQL解析器方便的一些内容。

2.内容

2.1 SQL解析器是什么?

SQL解析与优化是属于编辑器方面的知识,与C语言这类编程语言的解析上是类似的。SQL解析主要包含:词法分析、语义语法分析、优化和执行代码生成、例如,我们非常熟悉的MySQL的一个SQL解析部分流程,如下图所以:

SQL解析器详解-LMLPHP

 这里给大家介绍一下关于MySQL Lex和Bison生成的相关含义和具体负责的内容。

1.词法分析

SQL解析由词法分析和语法、语义分析两个部分组成。词法分析主要是把输入转化成若干个Token,其中Token包含key和非key。比如,一个简单的SQL如下所示:

SELECT age FROM user
01-31 19:33