MySQL 创建函数报错 This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration

这篇具有很好参考价值的文章主要介绍了MySQL 创建函数报错 This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景描述

在MySQL中创建函数时,报错如下:

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指定一个参数。


解决方案

可以通过将变量 log_bin_trust_function_creators 的值设置为“开启”实现。

方式1(临时方案,MySQL服务重启会失效)

可以通过SQL语句设置,SQL语句如下:

1)查询变量值

this function has none of deterministic, no sql, or reads sql data in its de,Tools,mysql,sql

2)设置变量值

this function has none of deterministic, no sql, or reads sql data in its de,Tools,mysql,sql

方式2(永久方案,需要重启MySQL服务,配置才能生效)

my.cnf 配置文件中添加如下一行配置,然后重启MySQL服务。

log_bin_trust_function_creators = 1

this function has none of deterministic, no sql, or reads sql data in its de,Tools,mysql,sql文章来源地址https://www.toymoban.com/news/detail-778621.html


到了这里,关于MySQL 创建函数报错 This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决:Springboot启动报错 Whitelabel Error Page: This application has no explicit mapping for

    目录 解决:Spring Boot启动报错 Whitelabel Error Page: This application has no explicit mapping for 问题背景 解决步骤 第一步:检查代码 第二步:检查Spring Boot配置 第三步:检查Controller层 第四步:检查依赖项 第五步:重启应用 总结 @RequestMapping @GetMapping @PostMapping 当我们使用Spring Boot框架开

    2024年02月03日
    浏览(45)
  • 关于wb.write(response.getOutputStream()); 报错getOutputStream() has already been called for this respons

    如果你在使用 response.getOutputStream() 方法时出现 getOutputStream() has already been called for this response 错误,通常是由于多次尝试获取输出流所导致的。 在一个 HTTP 响应中,只能获取一次输出流,否则就会抛出上述错误。这是因为获取输出流时实际上已经开始了 HTTP 响应的正文部分,

    2024年02月05日
    浏览(28)
  • kafka-报错-The coordinator is not aware of this member

    我在项目里把原来用着的 独立消费者 consumer-group-id 同时当做消费者组来消费分区信息,导致协调器找不到这个 consumer-group-id 注册两个测试 topic 写一个消费者组 启动项目,发送消息 报错日志 查看kafka服务器的消费者状态

    2024年02月13日
    浏览(52)
  • JavaScript中如何通过 new Function 创建 async 函数

    我喜欢的一点是,有很多方法可以完成相同的任务,其中一个例子就是创建函数。函数有几种模式;您看到的最后使用的模式之一是  new Function  方法: 如果您想使用此  new Function  方法创建一个异步函数,该怎么办?你需要聪明一点,多亏了MDN,我们有了答案: `Object.ge

    2024年02月13日
    浏览(35)
  • python 报错TypeError: object of type ‘NoneType‘ has no len()处理

    在编程过程中,我们经常会遇到各种异常情况。其中之一就是TypeError异常,它表示操作或函数应用于了错误的数据类型。在本文中,我们将重点讨论TypeError异常中的一种常见情况:当对象为NoneType时,调用len()函数会引发TypeError异常。 在Python中,NoneType是一个特殊的数据类型,

    2024年02月06日
    浏览(30)
  • scanf函数不安全: C4996 ‘scanf‘: This function or variable may be unsafe. Consider using scanf_s instead

    代码报错: scanf函数易受缓冲区溢出攻击的影响,可能导致安全问题。 scanf_s函数是一种更安全的选择,它将缓冲区的大小作为参数并避免了缓冲区溢出攻击 举个栗子: 字符数组的大小为 5 , 若输入的字符串字符数目不超过 5 ,那么没问题, ( 注意字符串后面默认会多出来一个 ‘

    2024年02月03日
    浏览(29)
  • elasticsearch报错master not discovered yet, this node has not previously joined a bootstrapped (v7+)..

    elasticsearch 启动后,查看 logs/elasticsearch.log,报错: 报错原因是没有找到 master 节点,因此需要指定 master 节点。 修改 config/elasticsearch.yml 文件,添加以下两行: 或 重启后问题解决。

    2024年02月13日
    浏览(42)
  • 使用 psycopg2 连接高斯数据库报错 failed: none of the server‘s SASL authentication mechanisms are supported解决方法

    使用 命令安装 安装 psycopg2 pip3 install psycopg2 编写python文件 test2.py,连接数据库。 import psycopg2 #创建连接对象 conn=psycopg2.connect(dbname=\\\"db_tpcc\\\",user=\\\"tpcc_user\\\",password=\\\"password\\\",host=\\\"10.201.65.207\\\",port=30100) cur=conn.cursor() #创建指针对象 #创建连接对象(SSl连接) #conn = psycopg2.connect(dbname=\\\"db

    2024年02月05日
    浏览(29)
  • MySQL窗口函数(MySQL Window Functions)

           MySQL从8.0开始支持窗口函数(Window Functions),因其经常被用在数据分析的场景,窗口函数也被称为分析函数(Analytic Functions)。 目录 一、窗口函数概念 二、基础语法 2.1 窗口的定义 2.2 命名窗口 三、专用窗口函数 3.1 row_number() 3.2 rank() 3.3 dense_rank() 3.4 percent_rank() 3.5

    2024年02月11日
    浏览(33)
  • vue3 + naive ui + Tabs 报错 ‘Slot “default“ invoked outside of the render function‘

    警告的异常信息: 解决方法: 如下给Tabs组件加一个defaultValue的默认值即可 参考:https://github.com/tusen-ai/naive-ui/issues/3134

    2024年01月21日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包