Java 核心技术MySQL

01 | 基础架构:一条SQL查询语句是如何执行的?

2019-07-14  本文已影响5人  那年_匆匆

问题:如果表 T 中没有字段 k,而你执行了这个语句 select * from T where k=1, 那肯定是会报“不存在这个列”的错误: “Unknown column ‘k’ in ‘where clause’”。你觉得这个错误是在我们上面提到的哪个阶段报出来的呢?

答案是:分析器。

待解答问题:

1. MySQL的框架有几个组件, 各是什么作用? 

2. Server层和存储引擎层各是什么作用?

3. you have an error in your SQL syntax 这个保存是在词法分析里还是在语法分析里报错?

4. 对于表的操作权限验证在哪里进行?

5. 执行器的执行查询语句的流程是什么样的? 

感谢极客时间:https://time.geekbang.org/column/article/68319

上一篇下一篇

猜你喜欢

热点阅读