【发布时间】:2020-08-01 13:02:37
【问题描述】:
我只是在尝试 mysql 存储过程,但出现以下错误:
ERROR 1064 (42000):您的 SQL 语法有错误;检查 与您的 MySQL 服务器版本相对应的手册 '; 附近使用的语法
DECLARE cur CURSOR for 从员工中选择出生日期;
' 在第 3 行
代码:
delimiter //
create procedure getminmaxbirthdate(OUT minage date,OUT maxage date)
begin
DECLARE minsofar,maxsofar,curage,done;
DECLARE cur CURSOR for
select birth_date from employees;
set minsofar = 2040-12-12;
set maxsofar = 0;
set done = 0;
DECLARE continue handler for not found
set done = 1;
open cur;
while done = 0 do
fetch birthdate into curage;
if curage > maxsofar then
set maxsofar = curage;
end if;
if curage < minsofar then
set minsofar = curage;
end if;
end while;
close cur;
set minage = minsofar;
set maxage = maxsofar;
end //
delimiter ;
【问题讨论】:
-
为什么要为此使用存储过程?您可以通过直接的 SQL 查询获得所需的信息。
-
@GMB 我正在学习
标签: mysql