详解PostgreSQL 语法中关键字的添加

详解PostgreSQL 语法中关键字的添加

当PostgreSQL的后台进程Postgres接收到查询语句后,首先将其传递给查询分析模块,进行词法、语法和语义分析。

记录下在parser语法解析模块添加关键字。

几个核心文件简介

源文件 说明
gram.y 定义语法结构,bison编译后生成gram.y和gram.h
scan.l 定义词法结构,flex编译后生成scan.c
kwlist.h 关键字列表,需要按序排列
check_keywords.pl linux下会调用其进行关键字检查(顺序、合法性等)

语法中关键字的添加

  1. gram.y中,%token <keyword>添加关键字PARTITIONS
  2. gram.y文件的reserved_keyword段添加关键字PARTITIONS
  3. kwlist.h文件,添加语句:PG_KEYWORD(“partitions”, PARTITIONS, UNRESERVED_KEYWORD)
© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发

请登录后发表评论