MySQL解析器

来源:转载

来源:MySQL解析器
MySQL解析器由两部分组成:
1.词法分析
扫描字符流,根据构词规则识别单个单词。
mysql使用Flex来生成词法扫描程序
在sql/lex.h中定义了MySQL关键字和函数关键字,用两个数组存储
2.语法分析
在词法分析的基础上将单词序列组成语法短语,最后生成语法树,提交给优化器
语法分析器使用Bison,在sql/sql_yacc.yy中定义了语法规则。
根据关系代数理论生成语法树
3.在sql目录下,有许多以sql_开头命名的文件,用于接受语法树,执行不同的查询,如sql_select.cc用于select查询

分享给朋友:
您可能感兴趣的文章:
随机阅读: