详解PostgreSQL 语法中关键字的添加
详解PostgreSQL 语法中关键字的添加
当PostgreSQL的后台进程Postgres接收到查询语句后,首先将其传递给查询分析模块,进行词法、语法和语义分析。
记录下在parser语法解析模块添加关键字。
几个核心文件简介
源文件 | 说明 |
---|---|
gram.y | 定义语法结构,bison编译后生成gram.y和gram.h |
scan.l | 定义词法结构,flex编译后生成scan.c |
kwlist.h | 关键字列表,需要按序排列 |
check_keywords.pl | linux下会调用其进行关键字检查(顺序、合法性等) |
语法中关键字的添加
- gram.y中,%token <keyword>添加关键字PARTITIONS
- gram.y文件的reserved_keyword段添加关键字PARTITIONS
- kwlist.h文件,添加语句:PG_KEYWORD(“partitions”, PARTITIONS, UNRESERVED_KEYWORD)
本篇文章到此结束,如果您有相关技术方面疑问可以联系我们技术人员远程解决,感谢大家支持本站!