mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
MDEV-10411 Providing compatibility for basic PL/SQL constructs
Changing label syntax from "label:" to "<<label>>".
This commit is contained in:
68
mysql-test/suite/compat/oracle/r/sp.result
Normal file
68
mysql-test/suite/compat/oracle/r/sp.result
Normal file
@ -0,0 +1,68 @@
|
||||
SET sql_mode=ORACLE;
|
||||
CREATE FUNCTION f1 (a INT) RETURNS CLOB
|
||||
BEGIN
|
||||
<<label1>>
|
||||
BEGIN
|
||||
IF a = 1 THEN
|
||||
LEAVE label1;
|
||||
END IF;
|
||||
RETURN 'IS NOT 1';
|
||||
END label1;
|
||||
RETURN 'IS 1';
|
||||
END;
|
||||
/
|
||||
SELECT f1(1);
|
||||
f1(1)
|
||||
IS 1
|
||||
SELECT f1(2);
|
||||
f1(2)
|
||||
IS NOT 1
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1 (a INT) RETURNS INT
|
||||
BEGIN
|
||||
<<label1>>
|
||||
LOOP
|
||||
IF a = 2 THEN
|
||||
LEAVE label1;
|
||||
END IF;
|
||||
SET a= a-1;
|
||||
END LOOP;
|
||||
RETURN a;
|
||||
END;
|
||||
/
|
||||
SELECT f1(4);
|
||||
f1(4)
|
||||
2
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1 (a INT) RETURNS INT
|
||||
BEGIN
|
||||
<<label1>>
|
||||
WHILE a>0 DO
|
||||
IF a = 2 THEN
|
||||
LEAVE label1;
|
||||
END IF;
|
||||
SET a= a-1;
|
||||
END WHILE label1;
|
||||
RETURN a;
|
||||
END;
|
||||
/
|
||||
SELECT f1(4);
|
||||
f1(4)
|
||||
2
|
||||
DROP FUNCTION f1;
|
||||
CREATE FUNCTION f1 (a INT) RETURNS INT
|
||||
BEGIN
|
||||
<<label1>>
|
||||
REPEAT
|
||||
IF a = 2 THEN
|
||||
LEAVE label1;
|
||||
END IF;
|
||||
SET a= a-1;
|
||||
UNTIL a=0 END REPEAT;
|
||||
RETURN a;
|
||||
END;
|
||||
/
|
||||
SELECT f1(4);
|
||||
f1(4)
|
||||
2
|
||||
DROP FUNCTION f1;
|
Reference in New Issue
Block a user