mysql 报错This function has none of DETERMINISTIC解决方案
这篇文章主要为我们提供了关于如何解决MySQL报错“This function has none of DETERMINISTIC”的指南。对于遇到这个问题的朋友们,这里有一些有用的信息和解决方案。
当你在创建存储过程时开启了MySQL的bin-log日志功能,你可能会遇到这样的错误:ERROR 1418 (HY000)。这是因为当你开启了bin-log,MySQL要求你在函数声明中指定其是否为DETERMINISTIC(不确定的)、NO SQL(无SQL语句或数据修改)、READS SQL DATA(仅读取数据)之一。这是因为这些参数对于二进制日志记录是必要的。
错误的原因在于我们开启了bin-log,而我们的函数没有指定上述的任何一个参数。为了解决这个问题,我们需要为我们的函数指定一个参数。以下是解决步骤:
我们需要查看当前的`log_bin_trust_function_creators`变量设置。这可以通过运行以下SQL命令来完成:
```sql
mysql> show variables like 'log_bin_trust_function_creators';
```
如果返回的值是OFF,我们需要将其设置为ON。为此,我们可以使用以下命令:
```sql
mysql> set global log_bin_trust_function_creators=1;
```
设置完成后,我们可以再次检查变量以确保其已正确设置。请注意,这种设置只在当前会话中有效。如果MySQL服务器重启,该设置将失效。为了确保设置持久有效,你需要在MySQL的配置文件(通常是myf或myi)中添加以下行:
```makefile
log_bin_trust_function_creators=1
```
这样就完成了对MySQL中该错误的解决方案的介绍。希望这篇文章能够帮助到有需要的朋友们。如果你在使用中遇到任何问题,欢迎随时向我们反馈和咨询。感谢大家对我们网站的支持!让我们一起学习和进步!
编程语言
- mysql 报错This function has none of DETERMINISTIC解决方案
- vue 实现数字滚动增加效果的实例代码
- 浅谈jquery采用attr修改form表单enctype不起作用的问
- JavaScript使用delete删除数组元素用法示例【数组长
- JS获取数组最大值、最小值及长度的方法
- php求正负数数组中连续元素最大值示例
- jQuery插件FusionCharts绘制2D环饼图效果示例【附de
- 微信小程序多列选择器range-key使用详解
- 启用Csrf后POST数据时出现的400错误
- 解决Vue开发中对话框被遮罩层挡住的问题
- jsp文件绝对路径的设置方法
- javascript文本框内输入文字倒计数的方法
- javascript基于DOM实现省市级联下拉框的方法
- PHP中把对象转换为关联数组代码分享
- PHP实现判断数组是一维、二维或几维的方法
- asp中利用xmlhttp抓取网页内容的代码