27.3. 为MySQL添加新步骤 - MySQL 中文手册

返回介绍

27.3. 为MySQL添加新步骤

发布于 2019-06-13 字数 1544 浏览 1037 评论 0

27.3.1. 步骤分析
27.3.2. 编写步骤

在MySQL中,你可以用C++定义一个步骤,在一个查询被发送到客户端之前访问和修改其中的数据。修改可以一行接一行地做,或者按照级别成组(GROUP)地做。

我们创建一个范例步骤来演示你可以做的。

此外,我们推荐你看一下mylua。通过它你可以用 LUA语言把运行时里的一个步骤加载到mysqld中。

27.3.1. 步骤分析

analyse([max_elements,[max_memory]])

这个步骤在sql/sql_analyse.cc定义,这个步骤检查你查询的结果,并且返回对此结果的一个分析:

  • max_elements (默认值 256) 是analyse注意到每列不同值的最高数目。analyse使用此 参数来检查是否最优化的列的类型是ENUM类型。

  • max_memory (默认值 8192) 是analyse在查找所有不同值时分配给每列的最大内存数。i

SELECT ... FROM ... WHERE ... PROCEDURE ANALYSE([max_elements,[max_memory]])

27.3.2. 编写步骤

当前来说,相关的文档只有源码。

检查下列文件可以获得关于步骤的所有信息:

  • sql/sql_analyse.cc

  • sql/procedure.h

  • sql/procedure.cc

  • sql/sql_select.cc

这是MySQL参考手册的翻译版本,关于MySQL参考手册,请访问dev.mysql.com。 原始参考手册为英文版,与英文版参考手册相比,本翻译版可能不是最新的。

上一篇:27.1. MySQL内部控件

下一篇:12.1. 操作符

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!