mysql 数据库创建function 的时候提示error 1418

本人菜鸟, 学习mysql数据库的时候 , 创建一个简单的function ,如下:

复制代码
DELIMITER //
create function add_num( a int  , b int  )  returns int 
begin 
	declare tot int ;
    set tot = a + b ;
    return tot ;
end//
DELIMITER ;

然后就提示错误 :

复制代码
ERROR code 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)

查了许多度娘,然后就明白了 log_bin_trust_function_creators 的限制效果。

解决方法:

(1)首先查看 log_bin_trust_function_creators 的状态 , 看到是OFF ,要改为ON !

复制代码
 show variables like 'log_bin_trust_function_creators'  ;

(2) 修改状态

复制代码
SET @@global.log_bin_trust_function_creators='ON'  ;

(3)重新执行function代码 ,就可以了!!

相关推荐
因为奋斗超太帅啦15 分钟前
MySQL学习笔记(一)——MySQL下载安装配置
笔记·学习·mysql
oh,huoyuyan37 分钟前
火语言RPA--Sqlite-导入数据表格
数据库·sqlite·rpa
伏游40 分钟前
【BUG】生产环境死锁问题定位排查解决全过程
服务器·数据库·spring boot·后端·postgresql·bug
搬码红绿灯2 小时前
数据库——MySQL数字函数和子查询
数据库·mysql
侧耳倾听1112 小时前
使用内存数据库来为mapper层的接口编写单元测试
数据库·单元测试
ifanatic2 小时前
[每周一更]-(第138期):MySQL 子查询详解:原理、应用及优化方案
数据库·mysql
TDengine (老段)3 小时前
TDengine 中的日志系统
java·大数据·数据库·物联网·时序数据库·tdengine·iotdb
kfepiza3 小时前
Debian编译安装mysql8.0.41源码包 笔记250401
数据库·笔记·mysql·debian·database
tjfsuxyy3 小时前
SqlServer整库迁移至Oracle
数据库·oracle·sqlserver