这个链接上有点介绍,可以了解个大概:http://blog.imaginea.com/mysql-query-parsing/
关键点:
1. SQL解析包括语法分析器和词法分析器。
简便的做法是用bison/flex组合。不过MySQL的词法分析器是手工打造的。
语法分析器的入口函数是MYSQLparse,词法分析器的入口函数是MYSQLlex。
2. 词法分析中...
分类:
数据库 时间:
2014-06-19 10:03:35
阅读次数:
302
文本符号化:Fslex
文本符号化(Tokenizing,有时也叫词法分析,lexical analysis 或 lexing),其基本意思是把文本分成可管理的块(lump),或符号(token)。要用到工具fslex.exe,它本身就是创建词法分析器(有时也叫扫描器,scanner),进行文本符号化的程序或模块的特定域语言。fslex.exe 是命令行程序,接收参数是表示词法分析器的文本...
分类:
其他好文 时间:
2014-06-14 06:55:46
阅读次数:
390
前沿:词法分析器是将一段程序的代码按照类别分开.一般来说是将关键字, 变量名 , 常数
运算符( + _ * / )和界符分类词法分析算是编译的基础把今天上编译原理的实验课, 看了看 老师给的代码
添加了一些注释大致的流程是这样的:规定关键字的符号是10数字的符号是数字本身+ - * = 这些符号代...
分类:
其他好文 时间:
2014-05-19 12:58:04
阅读次数:
257
sql请求发送到server端,需要经过解析器生成内部的数据结构对象,以方便进行优化和生成执行计划。解析器主要做了两件事情,词法分析和语法分析。词法和语法分析:mysql使用lex词法分析器,yacc语法分析器进行分析,最后保存到lex对象结构中。例如:
select id, name fr...
分类:
数据库 时间:
2014-05-16 02:57:33
阅读次数:
634
本文翻译自\javacc-5.0\doc\lookahead.html章节。
上文:http://blog.csdn.net/chaofanwei/article/details/25541065
1、LOOKAHEAD是什么
lookahead就是当语法分析器从词法分析器里取token时,需要取多少个才能让分析器正确的走下去。
例一
void Input() :...
分类:
编程语言 时间:
2014-05-12 23:19:21
阅读次数:
679