MySQL 8.3 Release Notes
FETCH [[NEXT] FROM] cursor_name INTO var_name [, var_name] ...
该语句从指定光标(必须处于打开状态)关联的 SELECT
语句中提取下一行,并将光标指针推进。如果存在行,则将提取的列存储在命名变量中。SELECT
语句检索的列数必须与 FETCH
语句中指定的输出变量数匹配。
如果没有更多行可用,将发生 No Data 条件,SQLSTATE 值为 '02000'
。要检测该条件,可以设置一个处理程序(或 NOT FOUND
条件)。例如,请参阅 第 15.6.6 节,“光标”。
请注意,另一个操作,例如 SELECT
或另一个 FETCH
,也可能会导致处理程序执行,从而引发相同的条件。如果需要区分哪个操作引发了该条件,可以将操作放在自己的 BEGIN ... END
块中,以便将其与自己的处理程序关联。