0
点赞
收藏
分享

微信扫一扫

【笔记】29.存储流程控制-异常处理

幸福的无所谓 2022-03-12 阅读 106
sql
-- 声明cursor
delimiter $$
create procedure cursor2(in d_name varchar(30))
begin
	declare empno_ int;
	declare ename_ varchar(20);
	declare sal_ double;
	declare flag int DEFAULT 1;
	declare c1 cursor for 
		select emp.empno,emp.ename,emp.sal from emp INNER JOIN dept on emp.deptno = dept.deptno and dept.dname = d_name; 
	declare continue HANDLER for 1329 set flag = 0;
	open c1;
	label1: LOOP
		-- 获取值cursor
		fetch c1 into empno_, ename_, sal_;
		IF flag = 1 THEN select empno_, ename_, sal_;
    ELSE leave label1;
    END IF;
	END LOOP label1;
	-- 关闭cursor
	CLOSE c1;
end $$
delimiter ;

call cursor2('sales');

drop procedure cursor1;
举报

相关推荐

0 条评论