数码资讯
Mysql源代码阅读笔记(八) 词法、语法分析器
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
SQL 语句的处理过程:
词法分析,语法分析,语义分析,构造执行树,生成执行计划,计划的执行。
Mysql 并没有使用lex来实现词法分析,但是语法分析却用了yacc。
与之对比的Sqlite3数据库,SQLite的词法分析器是手工写的,语法分析器由Lemon生成。
要学习Mysql的分析器,则需要具备lex和yacc的相关知识。
(一)词法分析
在sql/lex.h中定义了MySQL关键字和函数关键字,用两个数组存储。
关键字 static SYMBOL symbols[]
函数 static SYMBOL sql_functions[]
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。