|
MySQL中文参考手册
翻译:晏子(yanzi) 主页:http://linuxdb.yeah.net
第一章, 前一章, 下一章, 最后一章,目录.
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”
第一章, 前一章, 下一章, 最后一章,目录. |
|