当前位置: 首页 > 网络应用技术

如何执行SQL Update语句?

时间:2023-03-08 11:05:41 网络应用技术

  查询语句的执行过程通常是功能模块,例如连接器,分析仪,优化器和执行器,最后到达存储引擎。

  那么,更新语句的执行过程是什么?

  以前,您可能经常听到DBA同事说MySQL可以在半个月内返回任何一个秒。同时,您是否在内心深处感到好奇?

  我们仍然从更新语句的表开始。以下是此表的创建语句。该表具有主密钥ID和一个整数字段C:

  如果要添加ID = 2行的值,则SQL语句将如下编写:

  我之前介绍了SQL语句的基本执行链接。在这里,我将在这里拍照。您还可以简要介绍一下此图片进行评论。首先,可以确定查询语句的过程也将再次进行。

  在执行语句之前,您必须连接数据库,即连接器的工作。

  正如我之前说的那样,当表上有更新时,与此表相关的查询缓存将失败,因此该语句将清除表T上的所有缓存结果。这就是为什么我们通常不建议使用查询缓存。

  接下来,分析仪将知道这是通过短语和语法分析的更新语句。优化器决定使用ID索引。然后,执行器负责特定的执行,找到此行,然后更新。

  与查询过程不同,更新过程还涉及两个重要的日志模块。他们是我们今天要讨论的主角:重做日志(重做日志)和binlog(存档日志)。如果您与MySQL保持联系,那么两个单词肯定会绕过,我背后的内容将会继续强调您。但话虽如此,重做日志和Binlog在设计中有许多有趣的地方,并且这些设计思想也可以在您自己的过程中使用。