mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-04 12:56:14 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			134 lines
		
	
	
	
		
			3.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			134 lines
		
	
	
	
		
			3.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
####################################
 | 
						|
# SETUP
 | 
						|
####################################
 | 
						|
CREATE DATABASE statements_digest;
 | 
						|
USE statements_digest;
 | 
						|
CREATE TABLE t1(a int);
 | 
						|
CREATE TABLE t2(a int);
 | 
						|
CREATE TABLE t3(a int, b int);
 | 
						|
CREATE TABLE t4(a int, b int);
 | 
						|
CREATE TABLE t5(a int, b int, c int);
 | 
						|
CREATE TABLE t6(a int, b int, c int, d int);
 | 
						|
CREATE TABLE t11 (c CHAR(4));
 | 
						|
CREATE TABLE t12 (c CHAR(4));
 | 
						|
TRUNCATE TABLE performance_schema.events_statements_summary_by_digest;
 | 
						|
####################################
 | 
						|
# EXECUTION
 | 
						|
####################################
 | 
						|
SELECT 1 FROM t1;
 | 
						|
1
 | 
						|
SELECT 1 FROM `t1`;
 | 
						|
1
 | 
						|
SELECT 1,2 FROM t1;
 | 
						|
1	2
 | 
						|
SELECT 1, 2, 3, 4 FROM t1;
 | 
						|
1	2	3	4
 | 
						|
SELECT 1 FROM t2;
 | 
						|
1
 | 
						|
SELECT 1,2 FROM t2;
 | 
						|
1	2
 | 
						|
SELECT 1, 2, 3, 4 FROM t2;
 | 
						|
1	2	3	4
 | 
						|
INSERT INTO t1 VALUES (1);
 | 
						|
INSERT INTO t2 VALUES (1);
 | 
						|
INSERT INTO t3 VALUES (1, 2);
 | 
						|
INSERT INTO t4 VALUES (1, 2);
 | 
						|
INSERT INTO t5 VALUES (1, 2, 3);
 | 
						|
INSERT INTO t1 VALUES (1), (2), (3);
 | 
						|
INSERT INTO t1 VALUES (1), (2), (3), (4);
 | 
						|
INSERT INTO t3 VALUES (1, 2), (3, 4), (5, 6);
 | 
						|
INSERT INTO t5 VALUES (1, 2, 3), (4, 5, 6), (7, 8, 9);
 | 
						|
INSERT INTO t1 VALUES (NULL);
 | 
						|
INSERT INTO t3 VALUES (NULL,NULL);
 | 
						|
INSERT INTO t3 VALUES (1,NULL);
 | 
						|
INSERT INTO t3 VALUES (NULL,1);
 | 
						|
INSERT INTO t6 VALUES (NULL, NULL, NULL, NULL);
 | 
						|
INSERT INTO t6 VALUES (1, NULL, NULL, NULL);
 | 
						|
INSERT INTO t6 VALUES (NULL, 2, NULL, NULL);
 | 
						|
INSERT INTO t6 VALUES (1, 2, 3, NULL);
 | 
						|
INSERT INTO t6 VALUES (1, 2, NULL, 4);
 | 
						|
SELECT                                          1           +        1;
 | 
						|
1           +        1
 | 
						|
2
 | 
						|
SELECT 1;
 | 
						|
1
 | 
						|
1
 | 
						|
SELECT 1 /* This is an inline comment */ + 1;
 | 
						|
1 /* This is an inline comment */ + 1
 | 
						|
2
 | 
						|
SELECT 1+
 | 
						|
/*
 | 
						|
this is a
 | 
						|
multiple-line comment
 | 
						|
*/
 | 
						|
1;
 | 
						|
1+
 | 
						|
/*
 | 
						|
this is a
 | 
						|
multiple-line comment
 | 
						|
*/
 | 
						|
1
 | 
						|
2
 | 
						|
CREATE SCHEMA statements_digest_temp;
 | 
						|
DROP SCHEMA statements_digest_temp;
 | 
						|
CREATE DATABASE statements_digest_temp;
 | 
						|
DROP DATABASE statements_digest_temp;
 | 
						|
SELECT 1 FROM no_such_table;
 | 
						|
ERROR 42S02: Table 'statements_digest.no_such_table' doesn't exist
 | 
						|
CREATE TABLE dup_table (c char(4));
 | 
						|
CREATE TABLE dup_table (c char(4));
 | 
						|
ERROR 42S01: Table 'dup_table' already exists
 | 
						|
DROP TABLE dup_table;
 | 
						|
INSERT IGNORE INTO t11 VALUES("MySQL");
 | 
						|
Warnings:
 | 
						|
Warning	1265	Data truncated for column 'c' at row 1
 | 
						|
PREPARE stmt FROM "SELECT * FROM t12";
 | 
						|
EXECUTE stmt;
 | 
						|
c
 | 
						|
EXECUTE stmt;
 | 
						|
c
 | 
						|
DEALLOCATE PREPARE stmt;
 | 
						|
CREATE PROCEDURE p1() BEGIN SELECT * FROM t12; END//
 | 
						|
CALL p1();
 | 
						|
c
 | 
						|
CALL p1();
 | 
						|
c
 | 
						|
DROP PROCEDURE p1;
 | 
						|
CREATE FUNCTION `func`(a INT, b INT) RETURNS int(11) RETURN a+b //
 | 
						|
select func(3,4);
 | 
						|
func(3,4)
 | 
						|
7
 | 
						|
select func(13,42);
 | 
						|
func(13,42)
 | 
						|
55
 | 
						|
DROP FUNCTION func;
 | 
						|
CREATE TRIGGER trg BEFORE INSERT ON t12 FOR EACH ROW SET @a:=1;
 | 
						|
INSERT INTO t12 VALUES ("abc");
 | 
						|
INSERT INTO t12 VALUES ("def");
 | 
						|
DROP TRIGGER trg;
 | 
						|
####################################
 | 
						|
# QUERYING PS STATEMENT DIGEST
 | 
						|
####################################
 | 
						|
SELECT SCHEMA_NAME, DIGEST_TEXT, COUNT_STAR, SUM_ROWS_AFFECTED, SUM_WARNINGS,
 | 
						|
SUM_ERRORS FROM performance_schema.events_statements_summary_by_digest;
 | 
						|
SCHEMA_NAME	DIGEST_TEXT	COUNT_STAR	SUM_ROWS_AFFECTED	SUM_WARNINGS	SUM_ERRORS
 | 
						|
NULL	NULL	55	32	1	2
 | 
						|
statements_digest	TRUNCATE TABLE `performance_schema` . `events_statements_summary_by_digest` 	1	0	0	0
 | 
						|
SHOW GLOBAL VARIABLES LIKE "performance_schema_digests_size";
 | 
						|
Variable_name	Value
 | 
						|
performance_schema_digests_size	2
 | 
						|
SELECT COUNT(*) FROM performance_schema.events_statements_summary_by_digest;
 | 
						|
COUNT(*)
 | 
						|
2
 | 
						|
####################################
 | 
						|
# CLEANUP
 | 
						|
####################################
 | 
						|
DROP TABLE IF EXISTS t1;
 | 
						|
DROP TABLE IF EXISTS t2;
 | 
						|
DROP TABLE IF EXISTS t3;
 | 
						|
DROP TABLE IF EXISTS t4;
 | 
						|
DROP TABLE IF EXISTS t5;
 | 
						|
DROP TABLE IF EXISTS t6;
 | 
						|
DROP TABLE IF EXISTS t11;
 | 
						|
DROP TABLE IF EXISTS t12;
 | 
						|
DROP DATABASE IF EXISTS statements_digest;
 |