27.2.3.1. UDF 对简单函数的调用顺序 |
发布时间: 2012/8/17 17:59:48 |
下面介绍创建简单UDF时需要定义的不同函数。27.2.3节,“添加新的自定义函数”中介绍了MySQL调用这些函数的顺序。
如本节所示,应该说明主函数xxx()。注意返回值和参数会有所不同,这取决于你说明的SQL函数xxx()在CREATE FUNCTION声明中返回的是STRING,INTEGER类型还是REAL类型示:
对于STRING 型函数: char *xxx(UDF_INIT *initid, UDF_ARGS *args, char *result, unsigned long *length, char *is_null, char *error); 对于INTEGER型函数:
long long xxx(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 对于REAL型函数:
double xxx(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 初始化和去初始化函数如下说明: 电脑技巧www.boydavid.com my_bool xxx_init(UDF_INIT *initid, UDF_ARGS *args, char *message); void xxx_deinit(UDF_INIT *initid); initid 参数被传递给所有的三个函数。它指向一个UDF_INIT 结构,这个结构被用来在函数之间交换信息。UDF_INIT 结构项跟随着。初始化函数应该给任何它想要改变的项赋值。(要使用项的默认值,就让它不被改变)
本文出自:亿恩科技【www.enkj.com】 |