Spracherkennung für: .test vermutete Sprache: SQL {SQL[98] ABAP[54] Lisp[52]} [Methode: maximale Elemente, drei Dimensionen]
--echo #
--echo # MDEV-39518 Allow prepared statements in stored functions in assignment right hand
--echo #
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (10);
DELIMITER $$;
CREATE PROCEDURE p2()
BEGIN
EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (2)';
END;
$$
CREATE FUNCTION f1() RETURNS INT
BEGIN
CALL p2();
RETURN 1;
END;
$$
DELIMITER ;$$
--error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG
SELECT f1() FROM t1;
--error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG
SELECT * FROM t1 WHERE a=f1();
DROP FUNCTION f1;
DROP PROCEDURE p2;
DROP TABLE t1;
CREATE TABLE t1 (a INT);
INSERT INTO t1 VALUES (10);
CREATE TABLE t2 (a INT);
DELIMITER $$;
CREATE PROCEDURE p2()
BEGIN
EXECUTE IMMEDIATE 'INSERT INTO t2 VALUES (2)';
END;
$$
CREATE FUNCTION f1() RETURNS INT
BEGIN
CALL p2();
RETURN 1;
END;
$$
DELIMITER ;$$
--error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG
SELECT f1() FROM t1;
--error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG
SELECT * FROM t1 WHERE a=f1();
DROP FUNCTION f1;
DROP PROCEDURE p2;
DROP TABLE t1, t2;
--echo # End of 13.1 tests
[Dauer der Verarbeitung: 0.10 Sekunden, vorverarbeitet 2026-10-08]