mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 02:46:29 +01:00 
			
		
		
		
	 c92b9b7315
			
		
	
	
	c92b9b7315
	
	
	
		
			
			for general use. mysql-test/Makefile.am: Adding directories of additional test suites mysql-test/mysql-stress-test.pl: Adding check for additional errors checking during test run
		
			
				
	
	
		
			771 lines
		
	
	
	
		
			20 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			771 lines
		
	
	
	
		
			20 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| DROP TABLE IF EXISTS t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 TINYINT NOT NULL PRIMARY KEY, c2 TINYINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 TINYINT, new1 TINYINT, old2 TINYINT, new2 TINYINT);
 | |
| CREATE TABLE t3(c1 TINYINT NOT NULL PRIMARY KEY, c2 TINYINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 SMALLINT NOT NULL PRIMARY KEY, c2 SMALLINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 SMALLINT, new1 SMALLINT, old2 SMALLINT, new2 SMALLINT);
 | |
| CREATE TABLE t3(c1 SMALLINT NOT NULL PRIMARY KEY, c2 SMALLINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 MEDIUMINT NOT NULL PRIMARY KEY, c2 MEDIUMINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 MEDIUMINT, new1 MEDIUMINT, old2 MEDIUMINT, new2 MEDIUMINT);
 | |
| CREATE TABLE t3(c1 MEDIUMINT NOT NULL PRIMARY KEY, c2 MEDIUMINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY, c2 INT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 INT, new1 INT, old2 INT, new2 INT);
 | |
| CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 INT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 INTEGER NOT NULL PRIMARY KEY, c2 INTEGER);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 INTEGER, new1 INTEGER, old2 INTEGER, new2 INTEGER);
 | |
| CREATE TABLE t3(c1 INTEGER NOT NULL PRIMARY KEY, c2 INTEGER);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 BIGINT NOT NULL PRIMARY KEY, c2 BIGINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 BIGINT, new1 BIGINT, old2 BIGINT, new2 BIGINT);
 | |
| CREATE TABLE t3(c1 BIGINT NOT NULL PRIMARY KEY, c2 BIGINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 REAL NOT NULL PRIMARY KEY, c2 REAL);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 REAL, new1 REAL, old2 REAL, new2 REAL);
 | |
| CREATE TABLE t3(c1 REAL NOT NULL PRIMARY KEY, c2 REAL);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 DOUBLE NOT NULL PRIMARY KEY, c2 DOUBLE);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 DOUBLE, new1 DOUBLE, old2 DOUBLE, new2 DOUBLE);
 | |
| CREATE TABLE t3(c1 DOUBLE NOT NULL PRIMARY KEY, c2 DOUBLE);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 FLOAT NOT NULL PRIMARY KEY, c2 FLOAT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 FLOAT, new1 FLOAT, old2 FLOAT, new2 FLOAT);
 | |
| CREATE TABLE t3(c1 FLOAT NOT NULL PRIMARY KEY, c2 FLOAT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 DECIMAL NOT NULL PRIMARY KEY, c2 DECIMAL);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 DECIMAL, new1 DECIMAL, old2 DECIMAL, new2 DECIMAL);
 | |
| CREATE TABLE t3(c1 DECIMAL NOT NULL PRIMARY KEY, c2 DECIMAL);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 NUMERIC NOT NULL PRIMARY KEY, c2 NUMERIC);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 NUMERIC, new1 NUMERIC, old2 NUMERIC, new2 NUMERIC);
 | |
| CREATE TABLE t3(c1 NUMERIC NOT NULL PRIMARY KEY, c2 NUMERIC);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 TINYINT NOT NULL PRIMARY KEY, c2 TINYINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 TINYINT, new1 TINYINT, old2 TINYINT, new2 TINYINT);
 | |
| CREATE TABLE t3(c1 TINYINT NOT NULL PRIMARY KEY, c2 TINYINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 SMALLINT NOT NULL PRIMARY KEY, c2 SMALLINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 SMALLINT, new1 SMALLINT, old2 SMALLINT, new2 SMALLINT);
 | |
| CREATE TABLE t3(c1 SMALLINT NOT NULL PRIMARY KEY, c2 SMALLINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 MEDIUMINT NOT NULL PRIMARY KEY, c2 MEDIUMINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 MEDIUMINT, new1 MEDIUMINT, old2 MEDIUMINT, new2 MEDIUMINT);
 | |
| CREATE TABLE t3(c1 MEDIUMINT NOT NULL PRIMARY KEY, c2 MEDIUMINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 INT NOT NULL PRIMARY KEY, c2 INT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 INT, new1 INT, old2 INT, new2 INT);
 | |
| CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 INT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 INTEGER NOT NULL PRIMARY KEY, c2 INTEGER);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 INTEGER, new1 INTEGER, old2 INTEGER, new2 INTEGER);
 | |
| CREATE TABLE t3(c1 INTEGER NOT NULL PRIMARY KEY, c2 INTEGER);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 BIGINT NOT NULL PRIMARY KEY, c2 BIGINT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 BIGINT, new1 BIGINT, old2 BIGINT, new2 BIGINT);
 | |
| CREATE TABLE t3(c1 BIGINT NOT NULL PRIMARY KEY, c2 BIGINT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 REAL NOT NULL PRIMARY KEY, c2 REAL);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 REAL, new1 REAL, old2 REAL, new2 REAL);
 | |
| CREATE TABLE t3(c1 REAL NOT NULL PRIMARY KEY, c2 REAL);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 DOUBLE NOT NULL PRIMARY KEY, c2 DOUBLE);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 DOUBLE, new1 DOUBLE, old2 DOUBLE, new2 DOUBLE);
 | |
| CREATE TABLE t3(c1 DOUBLE NOT NULL PRIMARY KEY, c2 DOUBLE);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 FLOAT NOT NULL PRIMARY KEY, c2 FLOAT);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 FLOAT, new1 FLOAT, old2 FLOAT, new2 FLOAT);
 | |
| CREATE TABLE t3(c1 FLOAT NOT NULL PRIMARY KEY, c2 FLOAT);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 DECIMAL NOT NULL PRIMARY KEY, c2 DECIMAL);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 DECIMAL, new1 DECIMAL, old2 DECIMAL, new2 DECIMAL);
 | |
| CREATE TABLE t3(c1 DECIMAL NOT NULL PRIMARY KEY, c2 DECIMAL);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 | |
| CREATE TABLE t1 (c1 NUMERIC NOT NULL PRIMARY KEY, c2 NUMERIC);
 | |
| INSERT INTO t1 VALUES(1,1),(2,2),(3,3),(4,4),(6,6),(7,7),(8,8),(9,9),(10,10);
 | |
| CREATE TABLE t2(c1 INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY, old1 NUMERIC, new1 NUMERIC, old2 NUMERIC, new2 NUMERIC);
 | |
| CREATE TABLE t3(c1 NUMERIC NOT NULL PRIMARY KEY, c2 NUMERIC);
 | |
| INSERT INTO t3 VALUES(1,0);
 | |
| CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN 
 | |
| INSERT INTO t2 (old1,new1,old2,new2) VALUES(OLD.c1,NEW.c1,OLD.c2,NEW.c2);
 | |
| UPDATE t3 SET c2 = c2 + NEW.c2 WHERE c1 = 1; 
 | |
| END//
 | |
| UPDATE t1 SET c2=10 WHERE c1=1;
 | |
| UPDATE t1 SET c2=10 WHERE c1=0;
 | |
| UPDATE t1 SET c2=10 WHERE c1=NULL;
 | |
| UPDATE t1 SET c2=10 WHERE c1=6 OR c1=7;
 | |
| UPDATE t1 SET c2=10 WHERE c2=3;
 | |
| SELECT * FROM t1 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	10
 | |
| 2	2
 | |
| 3	10
 | |
| 4	4
 | |
| 6	10
 | |
| 7	10
 | |
| 8	8
 | |
| 9	9
 | |
| 10	10
 | |
| SELECT * FROM t2 ORDER BY c1;
 | |
| c1	old1	new1	old2	new2
 | |
| 1	1	1	1	10
 | |
| 2	6	6	6	10
 | |
| 3	7	7	7	10
 | |
| 4	3	3	3	10
 | |
| SELECT * FROM t3 ORDER BY c1;
 | |
| c1	c2
 | |
| 1	40
 | |
| DROP TABLE t1,t2,t3;
 |