mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-15941 Explicit cursor FOR loop does not close the cursor
This commit is contained in:
@ -611,3 +611,76 @@ a b
|
||||
a b
|
||||
2 b2
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-15941 Explicit cursor FOR loop does not close the cursor
|
||||
#
|
||||
BEGIN NOT ATOMIC
|
||||
DECLARE v INT;
|
||||
DECLARE cur CURSOR FOR SELECT 1 AS a FROM DUAL;
|
||||
FOR rec IN cur
|
||||
DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
FETCH cur INTO v;
|
||||
END;
|
||||
$$
|
||||
rec.a
|
||||
1
|
||||
ERROR 24000: Cursor is not open
|
||||
BEGIN NOT ATOMIC
|
||||
DECLARE v INT;
|
||||
DECLARE cur CURSOR FOR SELECT 1 AS a FROM DUAL;
|
||||
label:
|
||||
FOR rec IN cur
|
||||
DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
FETCH cur INTO v;
|
||||
END;
|
||||
$$
|
||||
rec.a
|
||||
1
|
||||
ERROR 24000: Cursor is not open
|
||||
BEGIN NOT ATOMIC
|
||||
DECLARE cur CURSOR FOR SELECT 1 AS a FROM DUAL;
|
||||
OPEN cur;
|
||||
FOR rec IN cur DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
END;
|
||||
$$
|
||||
ERROR 24000: Cursor is already open
|
||||
BEGIN NOT ATOMIC
|
||||
DECLARE cur CURSOR FOR SELECT 1 AS a FROM DUAL;
|
||||
FOR rec IN cur
|
||||
DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
FOR rec IN cur
|
||||
DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
END;
|
||||
$$
|
||||
rec.a
|
||||
1
|
||||
rec.a
|
||||
1
|
||||
BEGIN NOT ATOMIC
|
||||
DECLARE cur CURSOR FOR SELECT 1 AS a FROM DUAL;
|
||||
label1:
|
||||
FOR rec IN cur
|
||||
DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
label2:
|
||||
FOR rec IN cur
|
||||
DO
|
||||
SELECT rec.a;
|
||||
END FOR;
|
||||
END;
|
||||
$$
|
||||
rec.a
|
||||
1
|
||||
rec.a
|
||||
1
|
||||
|
Reference in New Issue
Block a user