Mysql5.7自定义函数递归报错1424 Recursive stored functions and triggers are not allowed
示例:
DELIMITER $$
CREATE FUNCTION test(countnum INT)
RETURNS INT DETERMINISTIC
BEGIN
DECLARE tempnum INT DEFAULT 0;
IF countnum > 2 THEN
RETURN ROW_COUNT();
END IF;
SET countnum = countnum+1;
SELECT test(countnum) INTO tempnum;
END $$
DELIMITER ;
SELECT test(1);
当我调用自定义函数时会抛出 Recursive stored functions and triggers are not allowed(不允许递归存储函数和触发器。)
函数是不支持递归,但是可以用存储过程递归
示例:
DELIMITER $$
CREATE PROCEDURE test(countnum INT)
end_flag:
BEGIN
DECLARE tempnum INT DEFAULT 0;
IF countnum > 2 THEN
SELECT '满足条件结束存储过程';
LEAVE end_flag;
END IF;
SET countnum = countnum+1;
CALL test(countnum);
END $$
DELIMITER ;
CALL test(1);
执行存储过程可能会抛出:
1456
Recursive limit 0 (as set by the max_sp_recursion_depth variable) was exceeded for routine test
max_sp_recursion_depth :递归调用的最大深度
可以执行:SET GLOBAL max_sp_recursion_depth =层级数;
最新文章
- MySql安装与MySQL添加用户、删除用户与授权
- PHP+MYSQL+AJAX实现每日签到功能
- 《STL系列》之vector原理及实现
- IOS客户端Coding项目记录(四)
- python 格式化字符串的三种方法
- html5的程序接口与元素变化
- UCOS-互斥信号量(学习笔记)
- Part 45 to 47 Talking about Enums in C#
- cocos2dx 3.1从零学习(一)——入门篇(一天学会打飞机)
- 见过NTP服务,没见过网络流量到200M左右的NTP服务
- SQL Server系统表讲解
- 关于新装ubuntu系统update失败和build-essential失败的解决办法
- 【转】【Android应用开发详解】第01期:第三方授权认证(一)实现第三方授权登录、分享以及获取用户资料
- bash shell中测试命令
- Framework7
- Python3创建项目时创建了一个叫做“keyword";的包,运行项目时报ImportError: cannot import name 'iskeyword'错误
- IDEA运行android项目一直是同一个apk
- 744. Find Smallest Letter Greater Than Target
- FileZilla_server在Windows和Linnx下的部署安装
- $Mayan$游戏
热门文章
- ACM-ICPC 2018 南京赛区网络预赛 Lpl and Energy-saving Lamps (线段树:无序数组找到第一个小于val)
- onbeforeunload与onunload事件
- Dell 笔记本触摸板网页双指滑动黑屏
- Java面向对象_增强for可变参数与代码块
- vue简单的CheckBox节点树
- CCflow6 的使用
- chroot 的应用
- ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第十四天(非原创)
- Jquery ajax 与 lazyload的混合使用(实现图片异步加载)
- hibernate自动建表技术_采用数据库反向生成技术