mysql函数编写
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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函数编写的主要内容,如果未能解决你的问题,请参考以下文章
如何在 MYSQL 中编写可以从触发器和存储函数调用的信号函数?
如何在 MYSQL 中编写可以从触发器和存储函数调用的信号函数?