This function has none of DETERMINISTIC, NO SQL解决办法
创建存储过程时
出错信息:
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 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
mysql> set global log_bin_trust_function_creators=1;
mysql> show variables like 'log_bin_trust_function_creators';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | ON |
+---------------------------------+-------+
这样添加了参数以后,如果mysqld重启,那个参数又会消失,因此记得在my.cnf配置文件中添加:
log_bin_trust_function_creators=1
相关推荐
MySQL数据库在开启二进制日志(bin-log)功能后,可能会遇到一个特定的错误:“This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled...”。...
代码如下: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_...
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)
总结来说,解决“此函数在声明中没有DETERMINISTIC、NO SQL或READS SQL DATA,并且二进制日志已启用”的错误,关键在于正确地声明函数的行为。理解这些关键字的作用,并根据函数的实际功能来使用它们,是创建安全、...
提供的PDF文件"sharp1418-This-function-has-none-of-DETERMINISTIC.pdf"很可能包含了详细步骤或更深入的解释,包括如何检查和修改函数定义,以及二进制日志配置的调整方法。建议阅读这份文档以获取更全面的解决方案...
在MySQL数据库中,当你尝试创建自定义函数或者导入包含自定义函数的SQL文件时,可能会遇到这样一个错误:“his function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary ...
总之,解决“This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA”错误的关键在于理解MySQL对bin-log的要求,并根据需要调整`log_bin_trust_function_creators`变量或修正函数的声明。同时,要...
mysql> delimiter // mysql> CREATE FUNCTION Uf_new_product_id() -> RETURNS VARCHAR(32) ...ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its
This function has none of DETERMINISTIC, NOSQL, 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) ...
错误信息"ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled"提示,存储过程或函数未指定DETERMINISTIC、NO SQL或READS ...
ErrorCode: 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_...
在尝试执行某些SQL函数或存储过程时,可能会遇到错误代码1418:“This function has none of DETERMINISTIC, NOSQL, or READS SQL DATA in its declaration and binary logging is enabled”。 **原因分析**: 此...
当你尝试创建用户定义的函数(UDF),并遇到"ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled"错误,这意味着由于二...
然而,在某些情况下,尝试创建或使用自定义函数时,可能会遇到错误提示,例如"ERROR 1418 : This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is ...
在遇到"ERROR 1418 (HY000): This routine has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled"这样的错误时,意味着在尝试创建或修改存储函数(包括存储过程...