mysql创建自定义函数

 

 

 

DELIMITER $$
CREATE FUNCTION `new_function` ()
RETURNS INTEGER
BEGIN

RETURN 1;
END

 

 

红色句子很关键

 

delimiter $$是设置 $$为命令终止符号,代替分号,因为分号在begin...end中会用到;

 

否则;号部分要报错。

 

出错信息大致类似:

ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

建立不了函数,是未开启功能:

在mysql中启动函数创建开关:

mysql>set global log_bin_trust_function_creators=1;

 

 

 

你可能感兴趣的:(mysql,自定义函数)