本MySQL教程将学习如何在MySQL中设置游标NOT FOUND条件的处理程序。
如果试图从游标获取数据,结果没有数据行,那么MySQL将产生一个no data的错误。可以为NOT FOUND条件设置处理程序,这样存储过程就不会因为错误而被终止。
在MySQL中为游标的NOT FOUND条件设置处理程序的语法为:
DECLARE
CONTINUE
HANDLER
FOR
NOT
FOUND [ set_condition ];
让我们看一下如何在MySQL中为游标的NOT FOUND条件设置处理程序。
首先,我们需要声明一个变量,该变量将在发生NO DATA错误时被设置。
done
INT
DEFAULT
FALSE
;
接下来,我们需要声明游标。
c1
CURSOR
SELECT
site_id
FROM
sites
WHERE
site_name = name_in;
最后,我们需要为游标的NOT FOUND声明一个处理程序。
FOUND
SET
done =
TRUE
这样在存储过程中就不会因错误而终止:
</td>
DELIMITER //
CREATE
FUNCTION
FindSiteID ( name_in
VARCHAR
(50) )
RETURNS
BEGIN
siteID
0;
OPEN
c1;
FETCH
INTO
siteID;
CLOSE
RETURN
END
; //
DELIMITER ;
原文链接:https://codingdict.com/