MySQL创建函数
示例
下面的(简单的)示例函数只返回常量INT值12。
DELIMITER ||
CREATE FUNCTION functionname()
RETURNS INT
BEGIN
RETURN 12;
END;
||
DELIMITER ;第一行定义了定界符(DELIMITER||)的更改,需要在创建函数之前对其进行设置,否则,如果将其保留为默认值,则在函数体中找到;的第一;行将作为结尾的CREATE说法,需要什么这通常不是。
CREATEFUNCTION运行完后,应将定界符设置回其默认值,;如上述示例(DELIMITER;)中的功能代码所示。
执行此功能如下:
SELECT functionname(); +----------------+ | functionname() | +----------------+ | 12 | +----------------+
稍微复杂一点(但仍然很琐碎)的示例采用一个参数并为其添加一个常量:
DELIMITER $$ CREATE FUNCTION add_2 ( my_arg INT ) RETURNS INT BEGIN RETURN (my_arg + 2); END; $$ DELIMITER ; SELECT add_2(12); +-----------+ | add_2(12) | +-----------+ | 14 | +-----------+
注意对DELIMITER指令使用了不同的参数。实际上,你可以使用未出现在任何字符序列CREATE声明的身体,但通常的做法是使用一倍非字母数字字符,例如\\,||或$$。
优良作法是始终在函数,过程或触发器创建或更新之前和之后更改参数,因为某些GUI不需要更改定界符,而通过命令行运行查询始终需要设置定界符。
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西