Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/MariaDB/mysql-test/main/   (MariaDB Server Version 8.1-8.4©)  Datei vom 1.9.2026 mit Größe 210 kB image not shown  

Quelle  ps_in_func-stack4-pppf.result  Sprache: unbekannt

 
#
# MDEV-39518 Allow prepared statements in stored functions in assignment right hand
#
# p1, p2, p3, f1(immediate)
CREATE TABLE t1 (a INT);
CREATE FUNCTION f1() RETURNS INT
BEGIN
EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (10)';
RETURN ROW_COUNT();
END;
$$
CREATE PROCEDURE p3()
BEGIN
DECLARE nrows INT DEFAULT f1();
SELECT nrows;
END;
$$
CREATE PROCEDURE p2()
BEGIN
CALL p3;
END;
$$
CREATE PROCEDURE p1()
BEGIN
CALL p2;
END;
$$
CALL p1;
nrows
1
CALL p1;
nrows
1
SELECT * FROM t1 ORDER BY a;
a
10
10
DROP PROCEDURE p3;
DROP PROCEDURE p2;
DROP PROCEDURE p1;
DROP FUNCTION f1;
DROP TABLE t1;
# p1, p2, p3, f1(immediate+direct)
CREATE TABLE t1 (a INT);
CREATE FUNCTION f1() RETURNS INT
BEGIN
-- A mixture of direct and prepared execution
DECLARE nrows INT DEFAULT 0;
INSERT INTO t1 VALUES(10);
SET nrows= nrows + ROW_COUNT();
EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (20)';
SET nrows= nrows + ROW_COUNT();
INSERT INTO t1 VALUES(30);
SET nrows= nrows + ROW_COUNT();
RETURN nrows;
END;
$$
CREATE PROCEDURE p3()
BEGIN
DECLARE nrows INT DEFAULT f1();
SELECT nrows;
END;
$$
CREATE PROCEDURE p2()
BEGIN
CALL p3;
END;
$$
CREATE PROCEDURE p1()
BEGIN
CALL p2;
END;
$$
CALL p1;
nrows
3
CALL p1;
nrows
3
SELECT * FROM t1 ORDER BY a;
a
10
10
20
20
30
30
DROP PROCEDURE p3;
DROP PROCEDURE p2;
DROP PROCEDURE p1;
DROP FUNCTION f1;
DROP TABLE t1;
# End of 13.1 tests

Messung V0.5 in Prozent
C=53 H=100 G=80

[Dauer der Verarbeitung: 0.14 Sekunden, vorverarbeitet 2026-10-08]