mysql编写函数_mysql函数编写

mysql中函数的编写如下:

create function functionName([parm type],[parm1 type],……)

returns type

begin

语句;

return 值;

end;

如上就是mysql函数的编写的模板。在函数中,不能使用select语句来打印数据,使用select来查询数据并且赋值给变量,这个是可以的。函数是要有返回值的。

在mysql中,函数可以使用在select中进行数据的处理。

当然,函数中可以定义各种类型的变量,比如bigint,longtext,varchar,int等等数据类型,也可以定义游标类型的数据。

在编写完mysql函数后,如果出现创建函数的报错

[Err] 1418 - 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)

,需要执行如下语句:

set global log_bin_trust_function_creators=1;

造成这个问题的原因是主从设备的安全原因。

函数的例子:

create FUNCTION functionTest(p_con VARCHAR(400))

RETURNS VARCHAR(400)

BEGIN

DECLARE v_con VARCHAR(400);

set v_con = p_con;

SELECT p_con into v_con;

return v_con;

end;

select functionTest('baiduc');

你可能感兴趣的:(mysql编写函数)