我创建了一个 mysql UDF,它返回 char** 类型的变量。我这样做的原因是因为我需要同时将两个 char 数组返回给 mysql。但是当我构建一个调用这个UDF的mysql触发器时,我不知道如何从这个数组中获取元素。
这是我的UDF代码:
char **insert_token(UDF_INIT *initid, UDF_ARGS *args, char* result, unsigned long *length, char *is_null
, char *error)
{
char* token1 = args->args[0];
char* token2 = args->args[1];
char** token=get_token(token1, token2);
return token;
}
当我在创建触发器时需要从该数组中检索元素时,我陷入了困境,下面是我的伪代码,如果有人知道如何以正确的方式实现它,我将不胜感激:
DELIMITER $$
CREATE TRIGGER INSERT_T BEFORE INSERT ON data
for each row begin
Array var = insert_token(New.token2, New.token2);
SET NEW.token1 = var[0];
SET NEW.token2 = var[1];
END$$
DELIMITER ;