出售域名!

mysql-logo.png (3082 bytes)MySQL中文参考手册

翻译:晏子(yanzi)       主页:http://getos.org


第一章, 前一章, 下一章, 最后一章目录.


15 为MySQL增加新过程

MySQL中,你可以定义一个用C++写地过程,它能在查询被送到客户前存取和修改查询中的数据。修改可一行一行地或在GROUP BY层次上进行。

我们已经在MySQL3.23中创建了一个过程例子来显示它能做什么。

15.1 analyse过程

analyse([max elements,[max memory]])

这个过程定义在“sql/sql_analyse.cc”,它检验来自你的查询的结果并返回结果的分析。

  • max elements(缺省256)是analyse将注意的每列不同值的最大数量。这被analyse用来检查最佳的列类型是否应该是ENUM类型。
  • max memory(缺省8192)是在analyse尝试寻找所有不同值的时候应该分配给每列的最大内存量。
SELECT ... FROM ... WHERE ... PROCEDURE ANALYSE([max elements,[max memory]])


15.2 编写一个过程

暂时,对此的唯一文档是源代码。:(

你可以检验下列文件找到关于过程的所有信息:

  • “sql/sql_analyse.cc”
  • “sql/procedure.h”
  • “sql/procedure.cc”
  • “sql/sql_select.cc”


第一章, 前一章, 下一章, 最后一章目录.