`
jinyanhui2008
  • 浏览: 318459 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

创建function时出错

    博客分类:
  • Sql
 
阅读更多

创建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.00sec)

mysql>set global log_bin_trust_function_creators=1;

Query OK,rows affected (0.00sec)

mysql>show variables like '%func%';

+---------------------------------+-------+

|Variable_name                  |Value|

+---------------------------------+-------+

|log_bin_trust_function_creators|ON   |

+---------------------------------+-------+

row in set (0.00sec)

mysql>

 

 

 

 

或者 

 

这样添加了参数以后,如果mysqld重启,那个参数又会消失,因此记得在my.cnf配置文件中添加:
log_bin_trust_function_creators=1

分享到:
评论

相关推荐

    MYSQL 创建函数出错的解决方案

    在MySQL数据库的开发过程中,创建自定义函数是常见的任务,但有时可能会遇到创建函数出错的问题。本篇文章将探讨两种常见的错误情况及其解决方案。 **错误情况一:权限不足(Error Code: 1227)** 当尝试创建MySQL...

    delphi_function.zip_delphi_delphi function_dephi

    Delphi中的Try...Except...Finally结构用于处理可能出现的错误或异常,确保函数即使在出错时也能执行必要的清理工作。 9. **单元(Units)**: Delphi的单元系统允许将函数和变量组织到单独的模块中,便于管理和...

    C语言出错查询.txt

    《C语言出错查询》这一资源提供了丰富的信息,旨在帮助开发者理解和解决在编写C语言程序时可能遇到的各种错误。下面,我们将深入探讨该文件提及的部分核心知识点,涵盖语法、逻辑、类型转换以及编译时常见的错误类型...

    ExcelFunction_读写excel_读写excel_excel读写_excel读写_源码

    总的来说,通过封装好的"ExcelFunction"类,开发者可以快速地在C#项目中实现Excel文件的读写,提高了工作效率,降低了出错的可能性。这在处理大量数据时尤其有用,能够避免手动操作的繁琐和易错性。在实际开发中,...

    C++出错对照

    ### C++出错对照知识点详解 #### 一、Ambiguous operators need parentheses (模糊的操作符需要括号) 在C++编程中,当一个操作符可能有多种解释时,编译器可能会无法确定具体的操作顺序或作用对象。为了避免这种不...

    C语言出错提示英汉对照

    ### C语言出错提示英汉对照 在学习与掌握C语言的过程中,遇到各种错误提示是在所难免的。本文旨在提供一份全面的C语言错误提示对照表,帮助初学者更好地理解和解决编程过程中出现的问题。 #### Ambiguous ...

    TestFB.rar_PLC Function block_三菱 PLC FB 测试

    在创建和测试PLC功能块时,以下是一些关键知识点: 1. **功能块定义**:首先,我们需要定义功能块的输入和输出参数。这些参数决定了FB如何与其他程序部分交互。输入参数提供FB执行所需的数据,而输出参数则包含FB...

    最简单不易出错的自定义选项卡TAB

    本教程将深入探讨如何使用简单的编程技术实现一个自定义选项卡功能,即"最简单不易出错的自定义选项卡TAB"。 首先,我们需要理解选项卡的基本原理。选项卡通常由两部分组成:可见的标签(显示为文字或图标)和隐藏...

    达梦sql语言使用手册

    - **WITH FUNCTION子句**:定义临时函数。 - **公用表表达式子句**:定义临时表。 ##### 4.5 合并查询结果 - 使用UNION、UNION ALL等关键字合并多个查询的结果集。 ##### 4.6 GROUP BY 和 HAVING 子句 - **GROUP ...

    Linux系统调用出错errno描述一览

    这通常发生在尝试创建一个文件名长度超过文件系统限制的文件时。 #### 37 ENOLCK -- No locks available 没有可用的锁。这通常发生在所有可用的锁都被占用时。 #### 38 ENOSYS -- Function not implemented 函数未...

    ABAP开发逻辑

    ABAP 是 SAP 系统中的一种开发语言,它用于创建 SAP 系统的报表、WORKFLOW、BAPI 和 FUNCTION 等。ABAP 语言提供了强大的开发工具和丰富的开发接口,能够满足复杂的业务需求。 一、创建报表(TCODE:SE80) 创建...

    JS滚动列表加载

    func:非自定义获取数据时,创建每行数据的方法; loadingMustTime:强制最小加载时间,默认0; loadingDom:加载中动画自定义,返回Dom或者HTML代码; loadedDom:完全加载完成动画自定义,返回Dom或者HTML代码; ...

    c语言出错中英文对照表

    ### C语言出错中英文对照表 在C语言编程中,遇到各种编译错误和警告是常有的事。为了帮助开发者更好地理解这些错误信息并快速定位问题所在,下面将详细介绍部分常见的C语言编译错误及其对应的含义。 #### ...

    ASP中Sub和Function的区别说明

    Sub过程可以直接通过过程名加参数的方式调用,而Function过程在不返回值时也可以类似Sub过程调用,但是当需要从Function过程中获取返回值时,则需要将过程调用的结果赋值给一个变量。 值得注意的是,尽管Function...

    Linux-C-function-user.rar_linux user

    5. **错误处理**:教导如何正确处理errno全局变量和perror函数,以便在程序出错时提供有用的反馈。 6. **内存管理**:讨论动态内存分配和释放的策略,避免内存泄漏,并介绍内存对齐和堆栈内存的使用。 7. **文件I/...

    freemarker使用笔记,从创建文件到写法指导

    1. 错误处理:当模板解析或执行出错时,Freemarker会抛出异常,需要捕获并处理。 2. 开启调试模式:在配置中设置`setDebug(true)`,可以查看详细的错误信息和模板解析过程。 **七、最佳实践** - 尽量保持模板简洁,...

    MATLAB中常见的程序出错问题

    如果要定义函数,则必须创建一个新的.m文件,并使用function关键字开头来定义函数。脚本文件和函数文件在使用上有所不同:脚本文件用于执行一系列命令,而函数文件则是以function关键字开始,可以接受输入参数并返回...

    matlab开发-嵌入式代码错误

    通过拖放模块和连接,用户可以创建复杂的动态系统模型。 2. **嵌入式Coder**:MATLAB的嵌入式Coder工具将Simulink模型转换为适用于特定硬件平台的C/C++代码。这使得算法能够直接在乐高机器人或其他嵌入式设备上运行...

    ABAP调用函数自动填充模式

    这个功能在处理复杂的函数模块调用时尤其有用,可以显著减少手动输入的时间,降低出错的可能性。 首先,让我们了解一下`Z_FUNC_W_PARAMS`。这可能是一个自定义的ABAP函数模块,设计用于演示或实现自动填充参数的...

Global site tag (gtag.js) - Google Analytics