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代码 ,就可以了!!

相关推荐
weixin_444012932 分钟前
mysql如何升级版本至最新_mysql大版本平滑升级策略
jvm·数据库·python
kexnjdcncnxjs17 分钟前
mysql如何优化小表的查询索引_mysql全表扫描与索引代价对比
jvm·数据库·python
Filwaod37 分钟前
互联网大厂Java面试实战:Spring+Redis+MySQL+JVM场景问答深度解析
jvm·spring boot·redis·mysql·java面试·技术面试·互联网大厂
一只专注api接口开发的技术猿43 分钟前
京东商品实时监控选品实战:用 Open Claw API 快速搭建自动化工具
运维·数据库·自动化
万事大吉CC1 小时前
【7】Django 类视图实战指南:如何高效引用与配置
数据库·sqlite
木土雨成小小测试员1 小时前
Python测试开发之后端二完结
数据库·python·sqlite
szccyw01 小时前
如何从SQL提取年或月数据_运用YEAR与MONTH提取函数
jvm·数据库·python
重生之小比特1 小时前
【MySQL 数据库】基本查询
android·数据库·mysql
罗超驿1 小时前
4.MySQL数据表操作与CRUD详解:从建表、插入到查询的全流程
数据库·mysql
2601_954971131 小时前
没有SQL基础能学数据分析吗?先学什么更合适
数据库·sql·数据分析