MySQL解析器

來源:MySQL解析器
MySQL解析器由兩部分組成:
1.詞法分析
掃描字符流,根據構詞規則識別單個單詞。
mysql使用Flex來生成詞法掃描程序
在sql/lex.h中定義了MySQL關鍵字和函數關鍵字,用兩個數組存儲
2.語法分析
在詞法分析的基礎上將單詞序列組成語法短語,最後生成語法樹,提交給優化器
語法分析器使用Bison,在sql/sql_yacc.yy中定義了語法規則。
根據關係代數理論生成語法樹
3.在sql目錄下,有許多以sql_開頭命名的文件,用於接受語法樹,執行不同的查詢,如sql_select.cc用於select查詢

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章