DELIMITER |;
CREATE PROCEDURE SampleProc1(x1 INT, x2 INT, y INT) BEGIN
INSERT INTO t1 VALUES (x1, y);
INSERT INTO t1 VALUES (x2, y); END|
CREATE PROCEDURE SampleProc2(x CHAR(16), y INT) BEGIN
DECLARE z1, z2 INT; SET z1 = y; SET z2 = z1+2;
INSERT INTO t2 VALUES (x, z2); END|
CREATE PROCEDURE SampleProc3() BEGIN
DECLARE ld DATE;
DECLARE li INT;
DECLARE lf DOUBLE;
DECLARE ls VARCHAR(32);
SET ld = NULL, li = NULL, lf = NULL, ls = NULL;
INSERT INTO t3 VALUES (ld, li, lf, ls);
INSERT INTO t3 (n, f, s) VALUES ((ld IS NULL), 1, "ld is null"),
((li IS NULL), 1, "li is null"),
((li = 0), NULL, "li = 0"),
((lf IS NULL), 1, "lf is null"),
((lf = 0), NULL, "lf = 0"),
((ls IS NULL), 1, "ls is null"); END|
CREATE PROCEDURE SampleProc4() BEGIN
DECLARE x INT; SET x = 1; WHILE x <= 2DO
INSERT INTO t4(word, mean) VALUES('a','a mean'); SET x = x + 1; ENDWHILE; END|
CREATE FUNCTION wt_avg(n1 INT, n2 INT, n3 INT, n4 INT)
RETURNS INT
DETERMINISTIC BEGIN
DECLARE avg INT; SET avg = (n1+n2+n3*2+n4*4)/8;
RETURN avg; END|
CREATE FUNCTION fac(n INT UNSIGNED) RETURNS BIGINT UNSIGNED BEGIN
DECLARE f BIGINT UNSIGNED DEFAULT 1; WHILE n > 1DO SET f = f * n; SET n = n - 1; ENDWHILE;
RETURN f; END|
--echo # Triggers
# INSERT triggers
CREATE TRIGGER trg1 BEFORE INSERT ON t1 FOR EACH ROW BEGIN if isnull(new.j) then SET new.j:= new.i * 10; ENDif; END|
CREATE TRIGGER trg2 AFTER INSERT ON t2 FOR EACH ROW BEGIN
UPDATE t1 SET i=new.id+i ; END|
# UPDATE trigger
CREATE TRIGGER trg3 AFTER UPDATE ON t2 FOR EACH ROW SET @change:= @change + new.id - old.id|
# DELETE triggers
CREATE TRIGGER trg4 BEFORE DELETE ON t1 FOR EACH ROW SET @del:= @del + 1|
CREATE TRIGGER trg5 AFTER DELETE ON t1 FOR EACH ROW SET @del:= @del + 8 + old.j|
DELIMITER ;|
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet am 2026-10-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.