- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
linux环境中使用flex、bison进行sql语法分析
n^1·+#”自T_’}Pw,-z。m、t‘#
k^’^h“t女{j,}q+《‘4’一o~’t’t’《‘h”5__q^r【_*t·^2f
实用第一。.??智慧密集
n_n.p_r{。mr,^~。.fu-.M,”
孙兆玉 朱鸿宇黄宇光
摘 要本文以查询语句分析为例,从问题描述、语法范式构建、词法分析、语法分析和应
用接口设计等方面详细阐述了一种sQb语句解析的通用策略,并奔绍了与之裙美
的冲突消解、可重入策略和错误处理三个方面的技术。
关键词 BNF范式,词法分析,语法分析,冲突消解,可重入
’ 以减少大摄的编码。
一、 引言
sQL是面向关系数据摩操作的一门成熟的高级语言,它是 法系统描述规则,生成自动进行语法分擀的程序。它的通用
数据库管理系统强大的管理操作接西。每个数据库管毽系统 性使其能在各种编译器、解释工其的设计上发挥优势。并且
(DBMs)都包含有自己的sQL谶法、语义分析模块,但通常
8ison兼容yacc的语法规则。
都不向外提供具体的分桥功能函数以及数据结构。然而实际
三、SQL语法分析的特点与目标
应用中,却有很多地方需要进行sQL语法分析,如:不同标
准SQL互相翻译、面向SQL编辑器的报错提示、基于SQL语从生成语言的角度看,SQL语言系统的设计遵循标准文法
句的任务分橱统计、sQL掭作图形化等。 规则,具有完善的词法和语法体系。通常一个sQL语法分析
系统应该包括语言实例、语法规则、定制规则、分析器、分
本文介绍了一种采用Flex、Bison分析工具进行SQL语法
分楫瓣逶耀策略,鬃决了sQL分析过臻中的砖突消鬃、可鬟
人策略和错误处理三大问题,实现了对0racle的sQL语句进语法规则和定制规则是构造分析器的直接依据,语言实例和
行语法分凝并穆建完整的sQL曝法掇憋强标,为遂一步豹懿 结果分别是分辑器的输入积羧出。
理提供了方便。
二、Flex、Bi80n工具
Flex、转ison是上个卺纪80年代左右出璃鹣unix环境下分
析编译工具lex、yacc的GNu版本。当时贝尔实验室的
Stephenc.jo}lnson是yace最主娶的作纛,谴采缡了禳多先落
算法思想,将yacc打造成为-一个成功的语法分析编译工具。
and
其后,M.E.1七skE.Schmidt成功推出了词法扫描工舆
lex,它与yacc是天生兄弟,lex架构上采用了yacc模式,字
蠢l鞫毛语言努辑系绞
符串扫描采用了A.V.Aho的算法机制,因此,schmidt常谦
称johnson秘Aho才是lex豹元悲作者。后来,GNU社区柱
sQL固有的语法规则采用流网模式层层展开,是用来描述
lex、yacc基础上,推出了nex、Bison,然后随着不断的技术其中顺序、蕴涵等各种结构的,如图2所示。这种图示表达
改进又推出了许多版本,每个版本郝蠢自己的特色,主要针 与BNF范式表达有凌在的一致蛙,它嚣l郝遵循疆土雨下层层
对以前版本功能缺陷的一些修改等。本文推荐使用Flex2.5.31
展开的表示框架、采用递归嵌套方式、逻辑中隐含着有穷自
您可能关注的文档
- kriging模型的增量构造及其在全局优化中的应用 incremental kriging model rebuilding method and its application in efficient global optimization.pdf
- k连通的分簇式无线传感器网络拓扑控制算法研究 research on the k-connected cluster topology control algorithm for wireless sensor networks.pdf
- k-匿名隐私保护模型中不确定性数据的建模问题研究 modeling the uncertain data in the k-anonymity privacy protection model.pdf
- k油田开发中的砂体成像及油藏描述 sand identification and reservoir description for k oil field development.pdf
- ksefs支持加密共享的服务器加密文件系统 ksefsa server-oriented encrypted file system supporting cypertext sharing.pdf
- l3中逻辑公式的范式表示及对称逻辑公式的构造方法 the normal form of logic formulae and construction method of symmetrical logic formulae in l3.pdf
- kerberos协议安全性分析 secure analysis of kerberos protocol.pdf
- labview实现光纤光栅传感解调 a new fbg demodulation system based on labview.pdf
- lbsn 中基于元路径的兴趣点推荐 poi recommendation based on meta-path in lbsn.pdf
- lc谐振式高温压力传感器高温下信号衰减的研究 research on the signal degradation of lc resonant high temperature pressure sensor under high temperature.pdf
文档评论(0)