MySQL创建方法错误:This function has none of DETERMINISTIC, NO SQL
2023-09-11 14:19:35 时间
创建function时
出错信息:
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)
原因:
这是我们开启了bin-log, 我们就必须指定我们的函数是否是 1 DETERMINISTIC 不确定的 2 NO SQL 没有SQl语句,当然也不会修改数据 3 READS SQL DATA 只是读取数据,当然也不会修改数据 4 MODIFIES SQL DATA 要修改数据 5 CONTAINS SQL 包含了SQL语句
其中在function里面,只有 DETERMINISTIC, NO SQL 和 READS SQL DATA 被支持。如果我们开启了 bin-log, 我们就必须为我们的function指定一个参数。
解决方法:
- SQL code
mysql> show variables like '%func%';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
1 row in set (0.00 sec)
mysql> set global log_bin_trust_function_creators=1;
Query OK, 0 rows affected (0.00 sec)
mysql> show variables like '%func%';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON |
+---------------------------------+-------+
1 row in set (0.00 sec) mysql>
相关文章
- Navicat Premium连接MySQL 1251错误
- mysql版本导致的hibernate 方言问题
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
- MySQL的Grant命令[转]
- mysql如何直接查出从1开始递增的数
- mysql Access denied for user root@localhost错误解决方法总结(转)
- mysql启动时报错:Starting MySQL... ERROR! The server quit without updating PID file (/opt/mysql/data/mysql.pid) 的解决方法
- Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (
- mysql中You can’t specify target table for update in FROM clause错误解决方法
- MySQL · TokuDB · TokuDB之黑科技工具
- 重置密码解决MySQL for Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
- 连接Mysql提示Can’t connect to local MySQL server through socket的解决方法
- Docker mysql 主从
- PostgreSQL的学习心得和知识总结(一百一十五)|词法级自上而下完美实现MySQL数据库的 反引号 的实现方案
- MySql数据库SQL语句将编码
- Groonga开源搜索引擎——列存储做聚合,没有内建分布式,分片和副本是随mysql或者postgreSQL作为存储引擎由MySQL自身来做分片和副本的
- Mysql报错:Can't connect to local MySQL server through socket '/tmp/mysql.sock'
- windows mysql 启动 发生系统错误5
- MySQL 配置, 避坑 sqlyog连接mysql错误码2058
- MySQL-视图
- MySQL 主从错误总结