很郁闷,直接在 mysql query browser里执行 使用了游标的存储过程,从逻辑上判断,没啥写错的地方,居然对我报
1329错误,说 nodata -zero rows fetched,selected,or processed.
查了一下,大概和游标的移动有关。
但在程序中直接调用此存储过程居然没问题。何解?
DELIMITER $$
DROP PROCEDURE IF EXISTS `getCurUsrInfo` $$
CREATE DEFINER=`root`@`%` PROCEDURE `getCurUsrInfo`(in usrId varchar(32), out s varchar(32),out p varchar(32),out q varchar(32))
BEGIN
declare no_more_Usr int;
declare usr_csr cursor for select usrname,usrpass,loginid from usrinfo where loginid=usrId ;
declare continue handler for not found set no_more_Usr=1;
set no_more_Usr=0;
open usr_csr;
repeat
fetch usr_csr into s,p,q;
-- select s,p,q;
until no_more_Usr=1
end repeat;
close usr_csr;
set no_more_Usr=0;
END $$
DELIMITER ;
以下为 调用代码,call getCurUsrINfo('usr',@a1,@a2,@a3);
c++中的就不写了。
奇怪,百思不得其解。先记下来再说了。
mysql5.5执行 存储过程1329错误
最新推荐文章于 2023-12-25 02:30:30 发布