SQL在解析阶段的语法检查的原理和过程

问题归档 2019-05-20
22
1 0
摘要:那请问语法检查是如何执行的?是内置有语法解析的工具吗?share pool怎么知道select语句写错了?

问题描述

SQL在share pool里面的Dictionary Cache查询来执行语义检查,知道客户端查询语句是否存在对象,是否存在对象列,是否存在权限。那请问语法检查是如何执行的?是内置有语法解析的工具吗?share pool怎么知道select语句写错了?

专家解答

server process会进行语法分析,并根据数据字典进行权限分析,通过后再进行parse(可能是soft parse或者hard parse)

第一,Oracle是闭源软件,不会公开代码。第二,具体如何进行语法解析,对使用者完全没有意义。你要是想知道一些开源数据库的语法解析过程,倒是可以从源码中获取。

「喜欢文章,快来给作者赞赏墨值吧」

评论

0
1
Oracle
订阅
欢迎订阅Oracle频道,订阅之后可以获取最新资讯和更新通知。
墨值排行
今日本周综合
近期活动
全部
相关课程
全部