mysql存储过程报错:[Err] 1328 - Incorrect number of FETCH variables

本文分享了一次解决存储过程中因游标fetch操作字段数量不匹配导致的[Err]1328-Incorrect number of FETCH variables错误的经历。通过仔细检查并确保fetch与声明游标的字段数量一致,成功解决了问题。

今天在做一个产品升级的时候,需要写存储过程对部分数据进行升级,但其中一个问题纠结了好久:先根据条件查出数据,然后用游标在插入数据到其他表,创建存储过程的时候没有问题,但调用的时候报错:[Err] 1328 - Incorrect number of FETCH variables。百度+google了好一会儿没找到问题原因。因为其中有一个条件判断,是一个动态的变量,开始怀疑是动态变量的问题,但发现不是,然后仔细检查了几遍创建语句,终于发现是在游标在 fetch 的时候查出来的字段和into的字段数量不一样,确保declare cursor for select 的字段数量(包括类型) 和 fetch into 的字段数量一样就没问题了。

 

将该问题记录于此,希望能给有同样问题的朋友一点帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值