Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  ps_in_func-stack2-pf.test  Sprache: unbekannt

 
Spracherkennung für: .test vermutete Sprache: SQL {SQL[84] Lisp[51] Masm[51]} [Methode: maximale Elemente, drei Dimensionen]

--echo #
--echo # MDEV-39518 Allow prepared statements in stored functions in assignment right hand
--echo #


--echo # p1, f2(immediate)

CREATE TABLE t1 (a INT);

DELIMITER $$;
CREATE FUNCTION f2_immediate() RETURNS INT
BEGIN
  EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (11)';
  RETURN 0;
END;
$$
CREATE PROCEDURE p1_default()
BEGIN
  DECLARE a INT DEFAULT f2_immediate();
END;
$$
CREATE PROCEDURE p1_set()
BEGIN
  DECLARE a INT;
  SET a= f2_immediate();
END;
$$
DELIMITER ;$$

CALL p1_default;
SELECT * FROM t1 ORDER BY a;
CALL p1_default;
SELECT * FROM t1 ORDER BY a;

TRUNCATE TABLE t1;
CALL p1_set;
SELECT * FROM t1 ORDER BY a;
CALL p1_set;
SELECT * FROM t1 ORDER BY a;

DROP PROCEDURE p1_default;
DROP PROCEDURE p1_set;
DROP FUNCTION f2_immediate;
DROP TABLE t1;


--echo # p1, f2(direct+immediate)

CREATE TABLE t1 (a INT);

DELIMITER $$;
CREATE FUNCTION f2_direct_and_immediate() RETURNS INT
BEGIN
  INSERT INTO t1 VALUES (10);
  EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (11)';
  RETURN 0;
END;
$$
CREATE PROCEDURE p1_default()
BEGIN
  DECLARE a INT DEFAULT f2_direct_and_immediate();
END;
$$
CREATE PROCEDURE p1_set()
BEGIN
  DECLARE a INT;
  SET a= f2_direct_and_immediate();
END;
$$
DELIMITER ;$$

CALL p1_default;
SELECT * FROM t1 ORDER BY a;
CALL p1_default;
SELECT * FROM t1 ORDER BY a;

TRUNCATE TABLE t1;
CALL p1_set;
SELECT * FROM t1 ORDER BY a;
CALL p1_set;
SELECT * FROM t1 ORDER BY a;

DROP PROCEDURE p1_default;
DROP PROCEDURE p1_set;
DROP FUNCTION f2_direct_and_immediate;
DROP TABLE t1;


--echo # p1, f2a(direct+immediate) + f2b(direct+immediate)

CREATE TABLE t1 (a INT);

DELIMITER $$;
CREATE FUNCTION f2a_direct_and_immediate() RETURNS INT
BEGIN
  INSERT INTO t1 VALUES (10);
  EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (11)';
  RETURN 0;
END;
$$
CREATE FUNCTION f2b_direct_and_immediate() RETURNS INT
BEGIN
  INSERT INTO t1 VALUES (20);
  EXECUTE IMMEDIATE 'INSERT INTO t1 VALUES (21)';
  RETURN 0;
END;
$$
CREATE PROCEDURE p1_default()
BEGIN
  DECLARE a INT DEFAULT f2a_direct_and_immediate();
  DECLARE b INT DEFAULT f2b_direct_and_immediate();
END;
$$
CREATE PROCEDURE p1_set()
BEGIN
  DECLARE a,b INT;
  SET a= f2a_direct_and_immediate();
  SET b= f2b_direct_and_immediate();
END;
$$
DELIMITER ;$$

CALL p1_default;
SELECT * FROM t1 ORDER BY a;
CALL p1_default;
SELECT * FROM t1 ORDER BY a;

TRUNCATE TABLE t1;
CALL p1_set;
SELECT * FROM t1 ORDER BY a;
CALL p1_set;
SELECT * FROM t1 ORDER BY a;

DROP PROCEDURE p1_default;
DROP PROCEDURE p1_set;
DROP FUNCTION f2a_direct_and_immediate;
DROP FUNCTION f2b_direct_and_immediate;
DROP TABLE t1;

--echo # End of 13.1 tests

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

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1126438
#Domains=1867298