1778 lines
		
	
	
		
			73 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			1778 lines
		
	
	
		
			73 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | DROP TABLE IF EXISTS t0,t1,t2,t3,t4,t5; | ||
|  | DROP VIEW IF EXISTS v1; | ||
|  | show variables where variable_name like "skip_show_database"; | ||
|  | Variable_name	Value | ||
|  | skip_show_database	OFF | ||
|  | grant select, update, execute on test.* to mysqltest_2@localhost; | ||
|  | grant select, update on test.* to mysqltest_1@localhost; | ||
|  | create user mysqltest_3@localhost; | ||
|  | create user mysqltest_3; | ||
|  | select * from information_schema.SCHEMATA where schema_name > 'm'; | ||
|  | CATALOG_NAME	SCHEMA_NAME	DEFAULT_CHARACTER_SET_NAME	DEFAULT_COLLATION_NAME	SQL_PATH | ||
|  | NULL	mtr	latin1	latin1_swedish_ci	NULL | ||
|  | NULL	mysql	latin1	latin1_swedish_ci	NULL | ||
|  | NULL	test	latin1	latin1_swedish_ci	NULL | ||
|  | select schema_name from information_schema.schemata; | ||
|  | schema_name | ||
|  | information_schema | ||
|  | mtr | ||
|  | mysql | ||
|  | test | ||
|  | show databases like 't%'; | ||
|  | Database (t%) | ||
|  | test | ||
|  | show databases; | ||
|  | Database | ||
|  | information_schema | ||
|  | mtr | ||
|  | mysql | ||
|  | test | ||
|  | show databases where `database` = 't%'; | ||
|  | Database | ||
|  | create database mysqltest; | ||
|  | create table mysqltest.t1(a int, b VARCHAR(30), KEY string_data (b)); | ||
|  | create table test.t2(a int); | ||
|  | create table t3(a int, KEY a_data (a)); | ||
|  | create table mysqltest.t4(a int); | ||
|  | create table t5 (id int auto_increment primary key); | ||
|  | insert into t5 values (10); | ||
|  | create view v1 (c) as | ||
|  | SELECT table_name FROM information_schema.TABLES | ||
|  | WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND | ||
|  | table_name<>'ndb_binlog_index' AND | ||
|  | table_name<>'ndb_apply_status'; | ||
|  | select * from v1; | ||
|  | c | ||
|  | CHARACTER_SETS | ||
|  | COLLATIONS | ||
|  | COLLATION_CHARACTER_SET_APPLICABILITY | ||
|  | COLUMNS | ||
|  | COLUMN_PRIVILEGES | ||
|  | ENGINES | ||
|  | EVENTS | ||
|  | FILES | ||
|  | GLOBAL_STATUS | ||
|  | GLOBAL_VARIABLES | ||
|  | KEY_COLUMN_USAGE | ||
|  | PARTITIONS | ||
|  | PLUGINS | ||
|  | PROCESSLIST | ||
|  | PROFILING | ||
|  | REFERENTIAL_CONSTRAINTS | ||
|  | ROUTINES | ||
|  | SCHEMATA | ||
|  | SCHEMA_PRIVILEGES | ||
|  | SESSION_STATUS | ||
|  | SESSION_VARIABLES | ||
|  | STATISTICS | ||
|  | TABLES | ||
|  | TABLE_CONSTRAINTS | ||
|  | TABLE_PRIVILEGES | ||
|  | TRIGGERS | ||
|  | USER_PRIVILEGES | ||
|  | VIEWS | ||
|  | columns_priv | ||
|  | db | ||
|  | event | ||
|  | func | ||
|  | general_log | ||
|  | help_category | ||
|  | help_keyword | ||
|  | help_relation | ||
|  | help_topic | ||
|  | host | ||
|  | plugin | ||
|  | proc | ||
|  | procs_priv | ||
|  | servers | ||
|  | slow_log | ||
|  | tables_priv | ||
|  | time_zone | ||
|  | time_zone_leap_second | ||
|  | time_zone_name | ||
|  | time_zone_transition | ||
|  | time_zone_transition_type | ||
|  | user | ||
|  | t1 | ||
|  | t4 | ||
|  | t2 | ||
|  | t3 | ||
|  | t5 | ||
|  | v1 | ||
|  | select c,table_name from v1 | ||
|  | inner join information_schema.TABLES v2 on (v1.c=v2.table_name) | ||
|  | where v1.c like "t%"; | ||
|  | c	table_name | ||
|  | TABLES	TABLES | ||
|  | TABLE_CONSTRAINTS	TABLE_CONSTRAINTS | ||
|  | TABLE_PRIVILEGES	TABLE_PRIVILEGES | ||
|  | TRIGGERS	TRIGGERS | ||
|  | tables_priv	tables_priv | ||
|  | time_zone	time_zone | ||
|  | time_zone_leap_second	time_zone_leap_second | ||
|  | time_zone_name	time_zone_name | ||
|  | time_zone_transition	time_zone_transition | ||
|  | time_zone_transition_type	time_zone_transition_type | ||
|  | t1	t1 | ||
|  | t4	t4 | ||
|  | t2	t2 | ||
|  | t3	t3 | ||
|  | t5	t5 | ||
|  | select c,table_name from v1 | ||
|  | left join information_schema.TABLES v2 on (v1.c=v2.table_name) | ||
|  | where v1.c like "t%"; | ||
|  | c	table_name | ||
|  | TABLES	TABLES | ||
|  | TABLE_CONSTRAINTS	TABLE_CONSTRAINTS | ||
|  | TABLE_PRIVILEGES	TABLE_PRIVILEGES | ||
|  | TRIGGERS	TRIGGERS | ||
|  | tables_priv	tables_priv | ||
|  | time_zone	time_zone | ||
|  | time_zone_leap_second	time_zone_leap_second | ||
|  | time_zone_name	time_zone_name | ||
|  | time_zone_transition	time_zone_transition | ||
|  | time_zone_transition_type	time_zone_transition_type | ||
|  | t1	t1 | ||
|  | t4	t4 | ||
|  | t2	t2 | ||
|  | t3	t3 | ||
|  | t5	t5 | ||
|  | select c, v2.table_name from v1 | ||
|  | right join information_schema.TABLES v2 on (v1.c=v2.table_name) | ||
|  | where v1.c like "t%"; | ||
|  | c	table_name | ||
|  | TABLES	TABLES | ||
|  | TABLE_CONSTRAINTS	TABLE_CONSTRAINTS | ||
|  | TABLE_PRIVILEGES	TABLE_PRIVILEGES | ||
|  | TRIGGERS	TRIGGERS | ||
|  | tables_priv	tables_priv | ||
|  | time_zone	time_zone | ||
|  | time_zone_leap_second	time_zone_leap_second | ||
|  | time_zone_name	time_zone_name | ||
|  | time_zone_transition	time_zone_transition | ||
|  | time_zone_transition_type	time_zone_transition_type | ||
|  | t1	t1 | ||
|  | t4	t4 | ||
|  | t2	t2 | ||
|  | t3	t3 | ||
|  | t5	t5 | ||
|  | select table_name from information_schema.TABLES | ||
|  | where table_schema = "mysqltest" and table_name like "t%"; | ||
|  | table_name | ||
|  | t1 | ||
|  | t4 | ||
|  | select * from information_schema.STATISTICS where TABLE_SCHEMA = "mysqltest"; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	NON_UNIQUE	INDEX_SCHEMA	INDEX_NAME	SEQ_IN_INDEX	COLUMN_NAME	COLLATION	CARDINALITY	SUB_PART	PACKED	NULLABLE	INDEX_TYPE	COMMENT | ||
|  | NULL	mysqltest	t1	1	mysqltest	string_data	1	b	A	NULL	NULL	NULL	YES	BTREE	 | ||
|  | show keys from t3 where Key_name = "a_data"; | ||
|  | Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment | ||
|  | t3	1	a_data	1	a	A	NULL	NULL	NULL	YES	BTREE	 | ||
|  | show tables like 't%'; | ||
|  | Tables_in_test (t%) | ||
|  | t2 | ||
|  | t3 | ||
|  | t5 | ||
|  | show table status; | ||
|  | Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment | ||
|  | t2	MyISAM	10	Fixed	0	0	0	#	1024	0	NULL	#	#	NULL	latin1_swedish_ci	NULL		 | ||
|  | t3	MyISAM	10	Fixed	0	0	0	#	1024	0	NULL	#	#	NULL	latin1_swedish_ci	NULL		 | ||
|  | t5	MyISAM	10	Fixed	1	7	7	#	2048	0	11	#	#	NULL	latin1_swedish_ci	NULL		 | ||
|  | v1	NULL	NULL	NULL	NULL	NULL	NULL	#	NULL	NULL	NULL	#	#	NULL	NULL	NULL	NULL	VIEW | ||
|  | show full columns from t3 like "a%"; | ||
|  | Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment | ||
|  | a	int(11)	NULL	YES	MUL	NULL		select,insert,update,references	 | ||
|  | show full columns from mysql.db like "Insert%"; | ||
|  | Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment | ||
|  | Insert_priv	enum('N','Y')	utf8_general_ci	NO		N		select,insert,update,references	 | ||
|  | show full columns from v1; | ||
|  | Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment | ||
|  | c	varchar(64)	utf8_general_ci	NO				select,insert,update,references	 | ||
|  | select * from information_schema.COLUMNS where table_name="t1" | ||
|  | and column_name= "a"; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	COLUMN_DEFAULT	IS_NULLABLE	DATA_TYPE	CHARACTER_MAXIMUM_LENGTH	CHARACTER_OCTET_LENGTH	NUMERIC_PRECISION	NUMERIC_SCALE	CHARACTER_SET_NAME	COLLATION_NAME	COLUMN_TYPE	COLUMN_KEY	EXTRA	PRIVILEGES	COLUMN_COMMENT | ||
|  | NULL	mysqltest	t1	a	1	NULL	YES	int	NULL	NULL	10	0	NULL	NULL	int(11)			select,insert,update,references	 | ||
|  | show columns from mysqltest.t1 where field like "%a%"; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | a	int(11)	YES		NULL	 | ||
|  | create view mysqltest.v1 (c) as select a from mysqltest.t1; | ||
|  | grant select (a) on mysqltest.t1 to mysqltest_2@localhost; | ||
|  | grant select on mysqltest.v1 to mysqltest_3; | ||
|  | select table_name, column_name, privileges from information_schema.columns | ||
|  | where table_schema = 'mysqltest' and table_name = 't1'; | ||
|  | table_name	column_name	privileges | ||
|  | t1	a	select | ||
|  | show columns from mysqltest.t1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | a	int(11)	YES		NULL	 | ||
|  | select table_name, column_name, privileges from information_schema.columns | ||
|  | where table_schema = 'mysqltest' and table_name = 'v1'; | ||
|  | table_name	column_name	privileges | ||
|  | v1	c	select | ||
|  | explain select * from v1; | ||
|  | ERROR HY000: EXPLAIN/SHOW can not be issued; lacking privileges for underlying table | ||
|  | drop view v1, mysqltest.v1; | ||
|  | drop tables mysqltest.t4, mysqltest.t1, t2, t3, t5; | ||
|  | drop database mysqltest; | ||
|  | select * from information_schema.CHARACTER_SETS | ||
|  | where CHARACTER_SET_NAME like 'latin1%'; | ||
|  | CHARACTER_SET_NAME	DEFAULT_COLLATE_NAME	DESCRIPTION	MAXLEN | ||
|  | latin1	latin1_swedish_ci	cp1252 West European	1 | ||
|  | SHOW CHARACTER SET LIKE 'latin1%'; | ||
|  | Charset	Description	Default collation	Maxlen | ||
|  | latin1	cp1252 West European	latin1_swedish_ci	1 | ||
|  | SHOW CHARACTER SET WHERE charset like 'latin1%'; | ||
|  | Charset	Description	Default collation	Maxlen | ||
|  | latin1	cp1252 West European	latin1_swedish_ci	1 | ||
|  | select * from information_schema.COLLATIONS | ||
|  | where COLLATION_NAME like 'latin1%'; | ||
|  | COLLATION_NAME	CHARACTER_SET_NAME	ID	IS_DEFAULT	IS_COMPILED	SORTLEN | ||
|  | latin1_german1_ci	latin1	5		#	1 | ||
|  | latin1_swedish_ci	latin1	8	Yes	#	1 | ||
|  | latin1_danish_ci	latin1	15		#	1 | ||
|  | latin1_german2_ci	latin1	31		#	2 | ||
|  | latin1_bin	latin1	47		#	1 | ||
|  | latin1_general_ci	latin1	48		#	1 | ||
|  | latin1_general_cs	latin1	49		#	1 | ||
|  | latin1_spanish_ci	latin1	94		#	1 | ||
|  | SHOW COLLATION LIKE 'latin1%'; | ||
|  | Collation	Charset	Id	Default	Compiled	Sortlen | ||
|  | latin1_german1_ci	latin1	5		#	1 | ||
|  | latin1_swedish_ci	latin1	8	Yes	#	1 | ||
|  | latin1_danish_ci	latin1	15		#	1 | ||
|  | latin1_german2_ci	latin1	31		#	2 | ||
|  | latin1_bin	latin1	47		#	1 | ||
|  | latin1_general_ci	latin1	48		#	1 | ||
|  | latin1_general_cs	latin1	49		#	1 | ||
|  | latin1_spanish_ci	latin1	94		#	1 | ||
|  | SHOW COLLATION WHERE collation like 'latin1%'; | ||
|  | Collation	Charset	Id	Default	Compiled	Sortlen | ||
|  | latin1_german1_ci	latin1	5		#	1 | ||
|  | latin1_swedish_ci	latin1	8	Yes	#	1 | ||
|  | latin1_danish_ci	latin1	15		#	1 | ||
|  | latin1_german2_ci	latin1	31		#	2 | ||
|  | latin1_bin	latin1	47		#	1 | ||
|  | latin1_general_ci	latin1	48		#	1 | ||
|  | latin1_general_cs	latin1	49		#	1 | ||
|  | latin1_spanish_ci	latin1	94		#	1 | ||
|  | select * from information_schema.COLLATION_CHARACTER_SET_APPLICABILITY | ||
|  | where COLLATION_NAME like 'latin1%'; | ||
|  | COLLATION_NAME	CHARACTER_SET_NAME | ||
|  | latin1_german1_ci	latin1 | ||
|  | latin1_swedish_ci	latin1 | ||
|  | latin1_danish_ci	latin1 | ||
|  | latin1_german2_ci	latin1 | ||
|  | latin1_bin	latin1 | ||
|  | latin1_general_ci	latin1 | ||
|  | latin1_general_cs	latin1 | ||
|  | latin1_spanish_ci	latin1 | ||
|  | drop procedure if exists sel2; | ||
|  | drop function if exists sub1; | ||
|  | drop function if exists sub2; | ||
|  | create function sub1(i int) returns int | ||
|  | return i+1; | ||
|  | create procedure sel2() | ||
|  | begin | ||
|  | select * from t1; | ||
|  | select * from t2; | ||
|  | end| | ||
|  | select parameter_style, sql_data_access, dtd_identifier | ||
|  | from information_schema.routines where routine_schema='test'; | ||
|  | parameter_style	sql_data_access	dtd_identifier | ||
|  | SQL	CONTAINS SQL	NULL | ||
|  | SQL	CONTAINS SQL	int(11) | ||
|  | show procedure status where db='test'; | ||
|  | Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation | ||
|  | test	sel2	PROCEDURE	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | show function status where db='test'; | ||
|  | Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation | ||
|  | test	sub1	FUNCTION	root@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | select a.ROUTINE_NAME from information_schema.ROUTINES a, | ||
|  | information_schema.SCHEMATA b where | ||
|  | a.ROUTINE_SCHEMA = b.SCHEMA_NAME AND b.SCHEMA_NAME='test'; | ||
|  | ROUTINE_NAME | ||
|  | sel2 | ||
|  | sub1 | ||
|  | explain select a.ROUTINE_NAME from information_schema.ROUTINES a, | ||
|  | information_schema.SCHEMATA b where | ||
|  | a.ROUTINE_SCHEMA = b.SCHEMA_NAME; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	#	ALL	NULL	NULL	NULL	NULL	NULL	 | ||
|  | 1	SIMPLE	#	ALL	NULL	NULL	NULL	NULL	NULL	Using where; Using join buffer | ||
|  | select a.ROUTINE_NAME, b.name from information_schema.ROUTINES a, | ||
|  | mysql.proc b where a.ROUTINE_NAME = convert(b.name using utf8) AND a.ROUTINE_SCHEMA='test' order by 1; | ||
|  | ROUTINE_NAME	name | ||
|  | sel2	sel2 | ||
|  | sub1	sub1 | ||
|  | select count(*) from information_schema.ROUTINES where routine_schema='test'; | ||
|  | count(*) | ||
|  | 2 | ||
|  | create view v1 as select routine_schema, routine_name from information_schema.routines where routine_schema='test' | ||
|  | order by routine_schema, routine_name; | ||
|  | select * from v1; | ||
|  | routine_schema	routine_name | ||
|  | test	sel2 | ||
|  | test	sub1 | ||
|  | drop view v1; | ||
|  | select ROUTINE_NAME, ROUTINE_DEFINITION from information_schema.ROUTINES; | ||
|  | ROUTINE_NAME	ROUTINE_DEFINITION | ||
|  | show create function sub1; | ||
|  | ERROR 42000: FUNCTION sub1 does not exist | ||
|  | select ROUTINE_NAME, ROUTINE_DEFINITION from information_schema.ROUTINES; | ||
|  | ROUTINE_NAME	ROUTINE_DEFINITION | ||
|  | sel2	NULL | ||
|  | sub1	NULL | ||
|  | grant all privileges on test.* to mysqltest_1@localhost; | ||
|  | select ROUTINE_NAME, ROUTINE_DEFINITION from information_schema.ROUTINES; | ||
|  | ROUTINE_NAME	ROUTINE_DEFINITION | ||
|  | sel2	NULL | ||
|  | sub1	NULL | ||
|  | create function sub2(i int) returns int | ||
|  | return i+1; | ||
|  | select ROUTINE_NAME, ROUTINE_DEFINITION from information_schema.ROUTINES; | ||
|  | ROUTINE_NAME	ROUTINE_DEFINITION | ||
|  | sel2	NULL | ||
|  | sub1	NULL | ||
|  | sub2	return i+1 | ||
|  | show create procedure sel2; | ||
|  | Procedure	sql_mode	Create Procedure	character_set_client	collation_connection	Database Collation | ||
|  | sel2		NULL	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | show create function sub1; | ||
|  | Function	sql_mode	Create Function	character_set_client	collation_connection	Database Collation | ||
|  | sub1		NULL	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | show create function sub2; | ||
|  | Function	sql_mode	Create Function	character_set_client	collation_connection	Database Collation | ||
|  | sub2		CREATE DEFINER=`mysqltest_1`@`localhost` FUNCTION `sub2`(i int) RETURNS int(11) | ||
|  | return i+1	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | show function status like "sub2"; | ||
|  | Db	Name	Type	Definer	Modified	Created	Security_type	Comment	character_set_client	collation_connection	Database Collation | ||
|  | test	sub2	FUNCTION	mysqltest_1@localhost	#	#	DEFINER		latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | drop function sub2; | ||
|  | show create procedure sel2; | ||
|  | Procedure	sql_mode	Create Procedure	character_set_client	collation_connection	Database Collation | ||
|  | sel2		CREATE DEFINER=`root`@`localhost` PROCEDURE `sel2`() | ||
|  | begin | ||
|  | select * from t1; | ||
|  | select * from t2; | ||
|  | end	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | create view v0 (c) as select schema_name from information_schema.schemata; | ||
|  | select * from v0; | ||
|  | c | ||
|  | information_schema | ||
|  | mtr | ||
|  | mysql | ||
|  | test | ||
|  | explain select * from v0; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	#	ALL	NULL	NULL	NULL	NULL	NULL	 | ||
|  | create view v1 (c) as select table_name from information_schema.tables | ||
|  | where table_name="v1"; | ||
|  | select * from v1; | ||
|  | c | ||
|  | v1 | ||
|  | create view v2 (c) as select column_name from information_schema.columns | ||
|  | where table_name="v2"; | ||
|  | select * from v2; | ||
|  | c | ||
|  | c | ||
|  | create view v3 (c) as select CHARACTER_SET_NAME from information_schema.character_sets | ||
|  | where CHARACTER_SET_NAME like "latin1%"; | ||
|  | select * from v3; | ||
|  | c | ||
|  | latin1 | ||
|  | create view v4 (c) as select COLLATION_NAME from information_schema.collations | ||
|  | where COLLATION_NAME like "latin1%"; | ||
|  | select * from v4; | ||
|  | c | ||
|  | latin1_german1_ci | ||
|  | latin1_swedish_ci | ||
|  | latin1_danish_ci | ||
|  | latin1_german2_ci | ||
|  | latin1_bin | ||
|  | latin1_general_ci | ||
|  | latin1_general_cs | ||
|  | latin1_spanish_ci | ||
|  | show keys from v4; | ||
|  | Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment | ||
|  | select * from information_schema.views where TABLE_NAME like "v%"; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	VIEW_DEFINITION	CHECK_OPTION	IS_UPDATABLE	DEFINER	SECURITY_TYPE	CHARACTER_SET_CLIENT	COLLATION_CONNECTION | ||
|  | NULL	test	v0	select `schemata`.`SCHEMA_NAME` AS `c` from `information_schema`.`schemata`	NONE	NO	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v1	select `tables`.`TABLE_NAME` AS `c` from `information_schema`.`tables` where (`tables`.`TABLE_NAME` = 'v1')	NONE	NO	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v2	select `columns`.`COLUMN_NAME` AS `c` from `information_schema`.`columns` where (`columns`.`TABLE_NAME` = 'v2')	NONE	NO	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v3	select `character_sets`.`CHARACTER_SET_NAME` AS `c` from `information_schema`.`character_sets` where (`character_sets`.`CHARACTER_SET_NAME` like 'latin1%')	NONE	NO	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v4	select `collations`.`COLLATION_NAME` AS `c` from `information_schema`.`collations` where (`collations`.`COLLATION_NAME` like 'latin1%')	NONE	NO	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | drop view v0, v1, v2, v3, v4; | ||
|  | create table t1 (a int); | ||
|  | grant select,update,insert on t1 to mysqltest_1@localhost; | ||
|  | grant select (a), update (a),insert(a), references(a) on t1 to mysqltest_1@localhost; | ||
|  | grant all on test.* to mysqltest_1@localhost with grant option; | ||
|  | select * from information_schema.USER_PRIVILEGES where grantee like '%mysqltest_1%'; | ||
|  | GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'mysqltest_1'@'localhost'	NULL	USAGE	NO | ||
|  | select * from information_schema.SCHEMA_PRIVILEGES where grantee like '%mysqltest_1%'; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	SELECT	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	INSERT	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	UPDATE	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	DELETE	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	CREATE	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	DROP	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	REFERENCES	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	INDEX	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	ALTER	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	CREATE TEMPORARY TABLES	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	LOCK TABLES	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	EXECUTE	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	CREATE VIEW	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	SHOW VIEW	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	CREATE ROUTINE	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	ALTER ROUTINE	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	EVENT	YES | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	TRIGGER	YES | ||
|  | select * from information_schema.TABLE_PRIVILEGES where grantee like '%mysqltest_1%'; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	SELECT	NO | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	INSERT	NO | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	UPDATE	NO | ||
|  | select * from information_schema.COLUMN_PRIVILEGES where grantee like '%mysqltest_1%'; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	a	SELECT	NO | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	a	INSERT	NO | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	a	UPDATE	NO | ||
|  | 'mysqltest_1'@'localhost'	NULL	test	t1	a	REFERENCES	NO | ||
|  | delete from mysql.user where user like 'mysqltest%'; | ||
|  | delete from mysql.db where user like 'mysqltest%'; | ||
|  | delete from mysql.tables_priv where user like 'mysqltest%'; | ||
|  | delete from mysql.columns_priv where user like 'mysqltest%'; | ||
|  | flush privileges; | ||
|  | drop table t1; | ||
|  | create table t1 (a int null, primary key(a)); | ||
|  | alter table t1 add constraint constraint_1 unique (a); | ||
|  | alter table t1 add constraint unique key_1(a); | ||
|  | alter table t1 add constraint constraint_2 unique key_2(a); | ||
|  | show create table t1; | ||
|  | Table	Create Table | ||
|  | t1	CREATE TABLE `t1` ( | ||
|  |   `a` int(11) NOT NULL DEFAULT '0', | ||
|  |   PRIMARY KEY (`a`), | ||
|  |   UNIQUE KEY `constraint_1` (`a`), | ||
|  |   UNIQUE KEY `key_1` (`a`), | ||
|  |   UNIQUE KEY `key_2` (`a`) | ||
|  | ) ENGINE=MyISAM DEFAULT CHARSET=latin1 | ||
|  | select * from information_schema.TABLE_CONSTRAINTS where | ||
|  | TABLE_SCHEMA= "test"; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_SCHEMA	TABLE_NAME	CONSTRAINT_TYPE | ||
|  | NULL	test	PRIMARY	test	t1	PRIMARY KEY | ||
|  | NULL	test	constraint_1	test	t1	UNIQUE | ||
|  | NULL	test	key_1	test	t1	UNIQUE | ||
|  | NULL	test	key_2	test	t1	UNIQUE | ||
|  | select * from information_schema.KEY_COLUMN_USAGE where | ||
|  | TABLE_SCHEMA= "test"; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	POSITION_IN_UNIQUE_CONSTRAINT	REFERENCED_TABLE_SCHEMA	REFERENCED_TABLE_NAME	REFERENCED_COLUMN_NAME | ||
|  | NULL	test	PRIMARY	NULL	test	t1	a	1	NULL	NULL	NULL	NULL | ||
|  | NULL	test	constraint_1	NULL	test	t1	a	1	NULL	NULL	NULL	NULL | ||
|  | NULL	test	key_1	NULL	test	t1	a	1	NULL	NULL	NULL	NULL | ||
|  | NULL	test	key_2	NULL	test	t1	a	1	NULL	NULL	NULL	NULL | ||
|  | select table_name from information_schema.TABLES where table_schema like "test%"; | ||
|  | table_name | ||
|  | t1 | ||
|  | select table_name,column_name from information_schema.COLUMNS where table_schema like "test%"; | ||
|  | table_name	column_name | ||
|  | t1	a | ||
|  | select ROUTINE_NAME from information_schema.ROUTINES; | ||
|  | ROUTINE_NAME | ||
|  | sel2 | ||
|  | sub1 | ||
|  | delete from mysql.user where user='mysqltest_1'; | ||
|  | drop table t1; | ||
|  | drop procedure sel2; | ||
|  | drop function sub1; | ||
|  | create table t1(a int); | ||
|  | create view v1 (c) as select a from t1 with check option; | ||
|  | create view v2 (c) as select a from t1 WITH LOCAL CHECK OPTION; | ||
|  | create view v3 (c) as select a from t1 WITH CASCADED CHECK OPTION; | ||
|  | select * from information_schema.views; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	VIEW_DEFINITION	CHECK_OPTION	IS_UPDATABLE	DEFINER	SECURITY_TYPE	CHARACTER_SET_CLIENT	COLLATION_CONNECTION | ||
|  | NULL	test	v1	select `test`.`t1`.`a` AS `c` from `test`.`t1`	CASCADED	YES	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v2	select `test`.`t1`.`a` AS `c` from `test`.`t1`	LOCAL	YES	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v3	select `test`.`t1`.`a` AS `c` from `test`.`t1`	CASCADED	YES	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | grant select (a) on test.t1 to joe@localhost with grant option; | ||
|  | select * from INFORMATION_SCHEMA.COLUMN_PRIVILEGES; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'joe'@'localhost'	NULL	test	t1	a	SELECT	YES | ||
|  | select * from INFORMATION_SCHEMA.TABLE_PRIVILEGES; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | drop view v1, v2, v3; | ||
|  | drop table t1; | ||
|  | delete from mysql.user where user='joe'; | ||
|  | delete from mysql.db where user='joe'; | ||
|  | delete from mysql.tables_priv where user='joe'; | ||
|  | delete from mysql.columns_priv where user='joe'; | ||
|  | flush privileges; | ||
|  | create table t1 (a int not null auto_increment,b int, primary key (a)); | ||
|  | insert into t1 values (1,1),(NULL,3),(NULL,4); | ||
|  | select AUTO_INCREMENT from information_schema.tables where table_name = 't1'; | ||
|  | AUTO_INCREMENT | ||
|  | 4 | ||
|  | drop table t1; | ||
|  | create table t1 (s1 int); | ||
|  | insert into t1 values (0),(9),(0); | ||
|  | select s1 from t1 where s1 in (select version from | ||
|  | information_schema.tables) union select version from | ||
|  | information_schema.tables; | ||
|  | s1 | ||
|  | 10 | ||
|  | drop table t1; | ||
|  | SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets; | ||
|  | Table	Create Table | ||
|  | CHARACTER_SETS	CREATE TEMPORARY TABLE `CHARACTER_SETS` ( | ||
|  |   `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '', | ||
|  |   `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '', | ||
|  |   `DESCRIPTION` varchar(60) NOT NULL DEFAULT '', | ||
|  |   `MAXLEN` bigint(3) NOT NULL DEFAULT '0' | ||
|  | ) ENGINE=MEMORY DEFAULT CHARSET=utf8 | ||
|  | set names latin2; | ||
|  | SHOW CREATE TABLE INFORMATION_SCHEMA.character_sets; | ||
|  | Table	Create Table | ||
|  | CHARACTER_SETS	CREATE TEMPORARY TABLE `CHARACTER_SETS` ( | ||
|  |   `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '', | ||
|  |   `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '', | ||
|  |   `DESCRIPTION` varchar(60) NOT NULL DEFAULT '', | ||
|  |   `MAXLEN` bigint(3) NOT NULL DEFAULT '0' | ||
|  | ) ENGINE=MEMORY DEFAULT CHARSET=utf8 | ||
|  | set names latin1; | ||
|  | create table t1 select * from information_schema.CHARACTER_SETS | ||
|  | where CHARACTER_SET_NAME like "latin1"; | ||
|  | select * from t1; | ||
|  | CHARACTER_SET_NAME	DEFAULT_COLLATE_NAME	DESCRIPTION	MAXLEN | ||
|  | latin1	latin1_swedish_ci	cp1252 West European	1 | ||
|  | alter table t1 default character set utf8; | ||
|  | show create table t1; | ||
|  | Table	Create Table | ||
|  | t1	CREATE TABLE `t1` ( | ||
|  |   `CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '', | ||
|  |   `DEFAULT_COLLATE_NAME` varchar(32) NOT NULL DEFAULT '', | ||
|  |   `DESCRIPTION` varchar(60) NOT NULL DEFAULT '', | ||
|  |   `MAXLEN` bigint(3) NOT NULL DEFAULT '0' | ||
|  | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 | ||
|  | drop table t1; | ||
|  | create view v1 as select * from information_schema.TABLES; | ||
|  | drop view v1; | ||
|  | create table t1(a NUMERIC(5,3), b NUMERIC(5,1), c float(5,2), | ||
|  | d NUMERIC(6,4), e float, f DECIMAL(6,3), g int(11), h DOUBLE(10,3), | ||
|  | i DOUBLE); | ||
|  | select COLUMN_NAME,COLUMN_TYPE, CHARACTER_MAXIMUM_LENGTH, | ||
|  | CHARACTER_OCTET_LENGTH, NUMERIC_PRECISION, NUMERIC_SCALE | ||
|  | from information_schema.columns where table_name= 't1'; | ||
|  | COLUMN_NAME	COLUMN_TYPE	CHARACTER_MAXIMUM_LENGTH	CHARACTER_OCTET_LENGTH	NUMERIC_PRECISION	NUMERIC_SCALE | ||
|  | a	decimal(5,3)	NULL	NULL	5	3 | ||
|  | b	decimal(5,1)	NULL	NULL	5	1 | ||
|  | c	float(5,2)	NULL	NULL	5	2 | ||
|  | d	decimal(6,4)	NULL	NULL	6	4 | ||
|  | e	float	NULL	NULL	12	NULL | ||
|  | f	decimal(6,3)	NULL	NULL	6	3 | ||
|  | g	int(11)	NULL	NULL	10	0 | ||
|  | h	double(10,3)	NULL	NULL	10	3 | ||
|  | i	double	NULL	NULL	22	NULL | ||
|  | drop table t1; | ||
|  | create table t115 as select table_name, column_name, column_type | ||
|  | from information_schema.columns where table_name = 'proc'; | ||
|  | select * from t115; | ||
|  | table_name	column_name	column_type | ||
|  | proc	db	char(64) | ||
|  | proc	name	char(64) | ||
|  | proc	type	enum('FUNCTION','PROCEDURE') | ||
|  | proc	specific_name	char(64) | ||
|  | proc	language	enum('SQL') | ||
|  | proc	sql_data_access	enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') | ||
|  | proc	is_deterministic	enum('YES','NO') | ||
|  | proc	security_type	enum('INVOKER','DEFINER') | ||
|  | proc	param_list	blob | ||
|  | proc	returns	longblob | ||
|  | proc	body	longblob | ||
|  | proc	definer	char(77) | ||
|  | proc	created	timestamp | ||
|  | proc	modified	timestamp | ||
|  | proc	sql_mode	set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','NOT_USED','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') | ||
|  | proc	comment	char(64) | ||
|  | proc	character_set_client	char(32) | ||
|  | proc	collation_connection	char(32) | ||
|  | proc	db_collation	char(32) | ||
|  | proc	body_utf8	longblob | ||
|  | drop table t115; | ||
|  | create procedure p108 () begin declare c cursor for select data_type | ||
|  | from information_schema.columns;  open c; open c; end;// | ||
|  | call p108()// | ||
|  | ERROR 24000: Cursor is already open | ||
|  | drop procedure p108; | ||
|  | create view v1 as select A1.table_name from information_schema.TABLES A1 | ||
|  | where table_name= "user"; | ||
|  | select * from v1; | ||
|  | table_name | ||
|  | user | ||
|  | drop view v1; | ||
|  | create view vo as select 'a' union select 'a'; | ||
|  | show index from vo; | ||
|  | Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment | ||
|  | select * from information_schema.TABLE_CONSTRAINTS where | ||
|  | TABLE_NAME= "vo"; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_SCHEMA	TABLE_NAME	CONSTRAINT_TYPE | ||
|  | select * from information_schema.KEY_COLUMN_USAGE where | ||
|  | TABLE_NAME= "vo"; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	POSITION_IN_UNIQUE_CONSTRAINT	REFERENCED_TABLE_SCHEMA	REFERENCED_TABLE_NAME	REFERENCED_COLUMN_NAME | ||
|  | drop view vo; | ||
|  | select TABLE_NAME,TABLE_TYPE,ENGINE | ||
|  | from information_schema.tables | ||
|  | where table_schema='information_schema' limit 2; | ||
|  | TABLE_NAME	TABLE_TYPE	ENGINE | ||
|  | CHARACTER_SETS	SYSTEM VIEW	MEMORY | ||
|  | COLLATIONS	SYSTEM VIEW	MEMORY | ||
|  | show tables from information_schema like "T%"; | ||
|  | Tables_in_information_schema (T%) | ||
|  | TABLES | ||
|  | TABLE_CONSTRAINTS | ||
|  | TABLE_PRIVILEGES | ||
|  | TRIGGERS | ||
|  | create database information_schema; | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | use information_schema; | ||
|  | show full tables like "T%"; | ||
|  | Tables_in_information_schema (T%)	Table_type | ||
|  | TABLES	SYSTEM VIEW | ||
|  | TABLE_CONSTRAINTS	SYSTEM VIEW | ||
|  | TABLE_PRIVILEGES	SYSTEM VIEW | ||
|  | TRIGGERS	SYSTEM VIEW | ||
|  | create table t1(a int); | ||
|  | ERROR 42S02: Unknown table 't1' in information_schema | ||
|  | use test; | ||
|  | show tables; | ||
|  | Tables_in_test | ||
|  | use information_schema; | ||
|  | show tables like "T%"; | ||
|  | Tables_in_information_schema (T%) | ||
|  | TABLES | ||
|  | TABLE_CONSTRAINTS | ||
|  | TABLE_PRIVILEGES | ||
|  | TRIGGERS | ||
|  | select table_name from tables where table_name='user'; | ||
|  | table_name | ||
|  | user | ||
|  | select column_name, privileges from columns | ||
|  | where table_name='user' and column_name like '%o%'; | ||
|  | column_name	privileges | ||
|  | Host	select,insert,update,references | ||
|  | Password	select,insert,update,references | ||
|  | Drop_priv	select,insert,update,references | ||
|  | Reload_priv	select,insert,update,references | ||
|  | Shutdown_priv	select,insert,update,references | ||
|  | Process_priv	select,insert,update,references | ||
|  | Show_db_priv	select,insert,update,references | ||
|  | Lock_tables_priv	select,insert,update,references | ||
|  | Show_view_priv	select,insert,update,references | ||
|  | Create_routine_priv	select,insert,update,references | ||
|  | Alter_routine_priv	select,insert,update,references | ||
|  | max_questions	select,insert,update,references | ||
|  | max_connections	select,insert,update,references | ||
|  | max_user_connections	select,insert,update,references | ||
|  | use test; | ||
|  | create function sub1(i int) returns int | ||
|  | return i+1; | ||
|  | create table t1(f1 int); | ||
|  | create view v2 (c) as select f1 from t1; | ||
|  | create view v3 (c) as select sub1(1); | ||
|  | create table t4(f1 int, KEY f1_key (f1)); | ||
|  | drop table t1; | ||
|  | drop function sub1; | ||
|  | select table_name from information_schema.views | ||
|  | where table_schema='test'; | ||
|  | table_name | ||
|  | v2 | ||
|  | v3 | ||
|  | select table_name from information_schema.views | ||
|  | where table_schema='test'; | ||
|  | table_name | ||
|  | v2 | ||
|  | v3 | ||
|  | select column_name from information_schema.columns | ||
|  | where table_schema='test'; | ||
|  | column_name | ||
|  | f1 | ||
|  | Warnings: | ||
|  | Warning	1356	View 'test.v2' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them | ||
|  | Warning	1356	View 'test.v3' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them | ||
|  | select index_name from information_schema.statistics where table_schema='test'; | ||
|  | index_name | ||
|  | f1_key | ||
|  | select constraint_name from information_schema.table_constraints | ||
|  | where table_schema='test'; | ||
|  | constraint_name | ||
|  | show create view v2; | ||
|  | View	Create View	character_set_client	collation_connection | ||
|  | v2	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v2` AS select `test`.`t1`.`f1` AS `c` from `t1`	latin1	latin1_swedish_ci | ||
|  | Warnings: | ||
|  | Warning	1356	View 'test.v2' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them | ||
|  | show create table v3; | ||
|  | View	Create View	character_set_client	collation_connection | ||
|  | v3	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v3` AS select `sub1`(1) AS `c`	latin1	latin1_swedish_ci | ||
|  | Warnings: | ||
|  | Warning	1356	View 'test.v3' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them | ||
|  | drop view v2; | ||
|  | drop view v3; | ||
|  | drop table t4; | ||
|  | select * from information_schema.table_names; | ||
|  | ERROR 42S02: Unknown table 'table_names' in information_schema | ||
|  | select column_type from information_schema.columns | ||
|  | where table_schema="information_schema" and table_name="COLUMNS" and | ||
|  | (column_name="character_set_name" or column_name="collation_name"); | ||
|  | column_type | ||
|  | varchar(32) | ||
|  | varchar(32) | ||
|  | select TABLE_ROWS from information_schema.tables where | ||
|  | table_schema="information_schema" and table_name="COLUMNS"; | ||
|  | TABLE_ROWS | ||
|  | NULL | ||
|  | select table_type from information_schema.tables | ||
|  | where table_schema="mysql" and table_name="user"; | ||
|  | table_type | ||
|  | BASE TABLE | ||
|  | show open tables where `table` like "user"; | ||
|  | Database	Table	In_use	Name_locked | ||
|  | mysql	user	0	0 | ||
|  | show status where variable_name like "%database%"; | ||
|  | Variable_name	Value | ||
|  | Com_show_databases	3 | ||
|  | show variables where variable_name like "skip_show_databas"; | ||
|  | Variable_name	Value | ||
|  | show global status like "Threads_running"; | ||
|  | Variable_name	Value | ||
|  | Threads_running	# | ||
|  | create table t1(f1 int); | ||
|  | create table t2(f2 int); | ||
|  | create view v1 as select * from t1, t2; | ||
|  | set @got_val= (select count(*) from information_schema.columns); | ||
|  | drop view v1; | ||
|  | drop table t1, t2; | ||
|  | use test; | ||
|  | CREATE TABLE t_crashme ( f1 BIGINT); | ||
|  | CREATE VIEW a1 (t_CRASHME) AS SELECT f1 FROM t_crashme GROUP BY f1; | ||
|  | CREATE VIEW a2 AS SELECT t_CRASHME FROM a1; | ||
|  | count(*) | ||
|  | 68 | ||
|  | drop view a2, a1; | ||
|  | drop table t_crashme; | ||
|  | select table_schema,table_name, column_name from | ||
|  | information_schema.columns | ||
|  | where data_type = 'longtext'; | ||
|  | table_schema	table_name	column_name | ||
|  | information_schema	COLUMNS	COLUMN_DEFAULT | ||
|  | information_schema	COLUMNS	COLUMN_TYPE | ||
|  | information_schema	EVENTS	EVENT_DEFINITION | ||
|  | information_schema	PARTITIONS	PARTITION_EXPRESSION | ||
|  | information_schema	PARTITIONS	SUBPARTITION_EXPRESSION | ||
|  | information_schema	PARTITIONS	PARTITION_DESCRIPTION | ||
|  | information_schema	PLUGINS	PLUGIN_DESCRIPTION | ||
|  | information_schema	PROCESSLIST	INFO | ||
|  | information_schema	ROUTINES	ROUTINE_DEFINITION | ||
|  | information_schema	TRIGGERS	ACTION_CONDITION | ||
|  | information_schema	TRIGGERS	ACTION_STATEMENT | ||
|  | information_schema	VIEWS	VIEW_DEFINITION | ||
|  | select table_name, column_name, data_type from information_schema.columns | ||
|  | where data_type = 'datetime'; | ||
|  | table_name	column_name	data_type | ||
|  | EVENTS	EXECUTE_AT	datetime | ||
|  | EVENTS	STARTS	datetime | ||
|  | EVENTS	ENDS	datetime | ||
|  | EVENTS	CREATED	datetime | ||
|  | EVENTS	LAST_ALTERED	datetime | ||
|  | EVENTS	LAST_EXECUTED	datetime | ||
|  | FILES	CREATION_TIME	datetime | ||
|  | FILES	LAST_UPDATE_TIME	datetime | ||
|  | FILES	LAST_ACCESS_TIME	datetime | ||
|  | FILES	CREATE_TIME	datetime | ||
|  | FILES	UPDATE_TIME	datetime | ||
|  | FILES	CHECK_TIME	datetime | ||
|  | PARTITIONS	CREATE_TIME	datetime | ||
|  | PARTITIONS	UPDATE_TIME	datetime | ||
|  | PARTITIONS	CHECK_TIME	datetime | ||
|  | ROUTINES	CREATED	datetime | ||
|  | ROUTINES	LAST_ALTERED	datetime | ||
|  | TABLES	CREATE_TIME	datetime | ||
|  | TABLES	UPDATE_TIME	datetime | ||
|  | TABLES	CHECK_TIME	datetime | ||
|  | TRIGGERS	CREATED	datetime | ||
|  | event	execute_at	datetime | ||
|  | event	last_executed	datetime | ||
|  | event	starts	datetime | ||
|  | event	ends	datetime | ||
|  | SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES A | ||
|  | WHERE NOT EXISTS | ||
|  | (SELECT * FROM INFORMATION_SCHEMA.COLUMNS B | ||
|  | WHERE A.TABLE_SCHEMA = B.TABLE_SCHEMA | ||
|  | AND A.TABLE_NAME = B.TABLE_NAME); | ||
|  | COUNT(*) | ||
|  | 0 | ||
|  | create table t1 | ||
|  | ( x_bigint BIGINT, | ||
|  | x_integer INTEGER, | ||
|  | x_smallint SMALLINT, | ||
|  | x_decimal DECIMAL(5,3), | ||
|  | x_numeric NUMERIC(5,3), | ||
|  | x_real REAL, | ||
|  | x_float FLOAT, | ||
|  | x_double_precision DOUBLE PRECISION ); | ||
|  | SELECT COLUMN_NAME, CHARACTER_MAXIMUM_LENGTH, CHARACTER_OCTET_LENGTH | ||
|  | FROM INFORMATION_SCHEMA.COLUMNS | ||
|  | WHERE TABLE_NAME= 't1'; | ||
|  | COLUMN_NAME	CHARACTER_MAXIMUM_LENGTH	CHARACTER_OCTET_LENGTH | ||
|  | x_bigint	NULL	NULL | ||
|  | x_integer	NULL	NULL | ||
|  | x_smallint	NULL	NULL | ||
|  | x_decimal	NULL	NULL | ||
|  | x_numeric	NULL	NULL | ||
|  | x_real	NULL	NULL | ||
|  | x_float	NULL	NULL | ||
|  | x_double_precision	NULL	NULL | ||
|  | drop table t1; | ||
|  | grant select on test.* to mysqltest_4@localhost; | ||
|  | SELECT TABLE_NAME, COLUMN_NAME, PRIVILEGES FROM INFORMATION_SCHEMA.COLUMNS | ||
|  | where COLUMN_NAME='TABLE_NAME'; | ||
|  | TABLE_NAME	COLUMN_NAME	PRIVILEGES | ||
|  | COLUMNS	TABLE_NAME	select | ||
|  | COLUMN_PRIVILEGES	TABLE_NAME	select | ||
|  | FILES	TABLE_NAME	select | ||
|  | KEY_COLUMN_USAGE	TABLE_NAME	select | ||
|  | PARTITIONS	TABLE_NAME	select | ||
|  | REFERENTIAL_CONSTRAINTS	TABLE_NAME	select | ||
|  | STATISTICS	TABLE_NAME	select | ||
|  | TABLES	TABLE_NAME	select | ||
|  | TABLE_CONSTRAINTS	TABLE_NAME	select | ||
|  | TABLE_PRIVILEGES	TABLE_NAME	select | ||
|  | VIEWS	TABLE_NAME	select | ||
|  | delete from mysql.user where user='mysqltest_4'; | ||
|  | delete from mysql.db where user='mysqltest_4'; | ||
|  | flush privileges; | ||
|  | SELECT table_schema, count(*) FROM information_schema.TABLES WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test', 'mysqltest') AND table_name<>'ndb_binlog_index' AND table_name<>'ndb_apply_status' GROUP BY TABLE_SCHEMA; | ||
|  | table_schema	count(*) | ||
|  | information_schema	28 | ||
|  | mysql	22 | ||
|  | create table t1 (i int, j int); | ||
|  | create trigger trg1 before insert on t1 for each row | ||
|  | begin | ||
|  | if new.j > 10 then | ||
|  | set new.j := 10; | ||
|  | end if; | ||
|  | end| | ||
|  | create trigger trg2 before update on t1 for each row | ||
|  | begin | ||
|  | if old.i % 2 = 0 then | ||
|  | set new.j := -1; | ||
|  | end if; | ||
|  | end| | ||
|  | create trigger trg3 after update on t1 for each row | ||
|  | begin | ||
|  | if new.j = -1 then | ||
|  | set @fired:= "Yes"; | ||
|  | end if; | ||
|  | end| | ||
|  | show triggers; | ||
|  | Trigger	Event	Table	Statement	Timing	Created	sql_mode	Definer	character_set_client	collation_connection	Database Collation | ||
|  | trg1	INSERT	t1	begin | ||
|  | if new.j > 10 then | ||
|  | set new.j := 10; | ||
|  | end if; | ||
|  | end	BEFORE	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | trg2	UPDATE	t1	begin | ||
|  | if old.i % 2 = 0 then | ||
|  | set new.j := -1; | ||
|  | end if; | ||
|  | end	BEFORE	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | trg3	UPDATE	t1	begin | ||
|  | if new.j = -1 then | ||
|  | set @fired:= "Yes"; | ||
|  | end if; | ||
|  | end	AFTER	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | select * from information_schema.triggers where trigger_schema in ('mysql', 'information_schema', 'test', 'mysqltest'); | ||
|  | TRIGGER_CATALOG	TRIGGER_SCHEMA	TRIGGER_NAME	EVENT_MANIPULATION	EVENT_OBJECT_CATALOG	EVENT_OBJECT_SCHEMA	EVENT_OBJECT_TABLE	ACTION_ORDER	ACTION_CONDITION	ACTION_STATEMENT	ACTION_ORIENTATION	ACTION_TIMING	ACTION_REFERENCE_OLD_TABLE	ACTION_REFERENCE_NEW_TABLE	ACTION_REFERENCE_OLD_ROW	ACTION_REFERENCE_NEW_ROW	CREATED	SQL_MODE	DEFINER	CHARACTER_SET_CLIENT	COLLATION_CONNECTION	DATABASE_COLLATION | ||
|  | NULL	test	trg1	INSERT	NULL	test	t1	0	NULL	begin | ||
|  | if new.j > 10 then | ||
|  | set new.j := 10; | ||
|  | end if; | ||
|  | end	ROW	BEFORE	NULL	NULL	OLD	NEW	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | NULL	test	trg2	UPDATE	NULL	test	t1	0	NULL	begin | ||
|  | if old.i % 2 = 0 then | ||
|  | set new.j := -1; | ||
|  | end if; | ||
|  | end	ROW	BEFORE	NULL	NULL	OLD	NEW	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | NULL	test	trg3	UPDATE	NULL	test	t1	0	NULL	begin | ||
|  | if new.j = -1 then | ||
|  | set @fired:= "Yes"; | ||
|  | end if; | ||
|  | end	ROW	AFTER	NULL	NULL	OLD	NEW	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | drop trigger trg1; | ||
|  | drop trigger trg2; | ||
|  | drop trigger trg3; | ||
|  | drop table t1; | ||
|  | create database mysqltest; | ||
|  | create table mysqltest.t1 (f1 int, f2 int); | ||
|  | create table mysqltest.t2 (f1 int); | ||
|  | grant select (f1) on mysqltest.t1 to user1@localhost; | ||
|  | grant select on mysqltest.t2 to user2@localhost; | ||
|  | grant select on mysqltest.* to user3@localhost; | ||
|  | grant select on *.* to user4@localhost; | ||
|  | select * from information_schema.column_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user1'@'localhost'	NULL	mysqltest	t1	f1	SELECT	NO | ||
|  | select * from information_schema.table_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | select * from information_schema.schema_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | select * from information_schema.user_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user1'@'localhost'	NULL	USAGE	NO | ||
|  | show grants; | ||
|  | Grants for user1@localhost | ||
|  | GRANT USAGE ON *.* TO 'user1'@'localhost' | ||
|  | GRANT SELECT (f1) ON `mysqltest`.`t1` TO 'user1'@'localhost' | ||
|  | select * from information_schema.column_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | select * from information_schema.table_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user2'@'localhost'	NULL	mysqltest	t2	SELECT	NO | ||
|  | select * from information_schema.schema_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | select * from information_schema.user_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user2'@'localhost'	NULL	USAGE	NO | ||
|  | show grants; | ||
|  | Grants for user2@localhost | ||
|  | GRANT USAGE ON *.* TO 'user2'@'localhost' | ||
|  | GRANT SELECT ON `mysqltest`.`t2` TO 'user2'@'localhost' | ||
|  | select * from information_schema.column_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | select * from information_schema.table_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | select * from information_schema.schema_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user3'@'localhost'	NULL	mysqltest	SELECT	NO | ||
|  | select * from information_schema.user_privileges order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user3'@'localhost'	NULL	USAGE	NO | ||
|  | show grants; | ||
|  | Grants for user3@localhost | ||
|  | GRANT USAGE ON *.* TO 'user3'@'localhost' | ||
|  | GRANT SELECT ON `mysqltest`.* TO 'user3'@'localhost' | ||
|  | select * from information_schema.column_privileges where grantee like '%user%' | ||
|  | order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user1'@'localhost'	NULL	mysqltest	t1	f1	SELECT	NO | ||
|  | select * from information_schema.table_privileges where grantee like '%user%' | ||
|  | order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user2'@'localhost'	NULL	mysqltest	t2	SELECT	NO | ||
|  | select * from information_schema.schema_privileges where grantee like '%user%' | ||
|  | order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	TABLE_SCHEMA	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user3'@'localhost'	NULL	mysqltest	SELECT	NO | ||
|  | select * from information_schema.user_privileges where grantee like '%user%' | ||
|  | order by grantee; | ||
|  | GRANTEE	TABLE_CATALOG	PRIVILEGE_TYPE	IS_GRANTABLE | ||
|  | 'user1'@'localhost'	NULL	USAGE	NO | ||
|  | 'user2'@'localhost'	NULL	USAGE	NO | ||
|  | 'user3'@'localhost'	NULL	USAGE	NO | ||
|  | 'user4'@'localhost'	NULL	SELECT	NO | ||
|  | show grants; | ||
|  | Grants for user4@localhost | ||
|  | GRANT SELECT ON *.* TO 'user4'@'localhost' | ||
|  | drop user user1@localhost, user2@localhost, user3@localhost, user4@localhost; | ||
|  | use test; | ||
|  | drop database mysqltest; | ||
|  | drop procedure if exists p1; | ||
|  | drop procedure if exists p2; | ||
|  | create procedure p1 () modifies sql data set @a = 5; | ||
|  | create procedure p2 () set @a = 5; | ||
|  | select sql_data_access from information_schema.routines | ||
|  | where specific_name like 'p%'; | ||
|  | sql_data_access | ||
|  | MODIFIES SQL DATA | ||
|  | CONTAINS SQL | ||
|  | drop procedure p1; | ||
|  | drop procedure p2; | ||
|  | show create database information_schema; | ||
|  | Database	Create Database | ||
|  | information_schema	CREATE DATABASE `information_schema` /*!40100 DEFAULT CHARACTER SET utf8 */ | ||
|  | create table t1(f1 LONGBLOB, f2 LONGTEXT); | ||
|  | select column_name,data_type,CHARACTER_OCTET_LENGTH, | ||
|  | CHARACTER_MAXIMUM_LENGTH | ||
|  | from information_schema.columns | ||
|  | where table_name='t1'; | ||
|  | column_name	data_type	CHARACTER_OCTET_LENGTH	CHARACTER_MAXIMUM_LENGTH | ||
|  | f1	longblob	4294967295	4294967295 | ||
|  | f2	longtext	4294967295	4294967295 | ||
|  | drop table t1; | ||
|  | create table t1(f1 tinyint, f2 SMALLINT, f3 mediumint, f4 int, | ||
|  | f5 BIGINT, f6 BIT, f7 bit(64)); | ||
|  | select column_name, NUMERIC_PRECISION, NUMERIC_SCALE | ||
|  | from information_schema.columns | ||
|  | where table_name='t1'; | ||
|  | column_name	NUMERIC_PRECISION	NUMERIC_SCALE | ||
|  | f1	3	0 | ||
|  | f2	5	0 | ||
|  | f3	7	0 | ||
|  | f4	10	0 | ||
|  | f5	19	0 | ||
|  | f6	1	NULL | ||
|  | f7	64	NULL | ||
|  | drop table t1; | ||
|  | create table t1 (f1 integer); | ||
|  | create trigger tr1 after insert on t1 for each row set @test_var=42; | ||
|  | use information_schema; | ||
|  | select trigger_schema, trigger_name from triggers where | ||
|  | trigger_name='tr1'; | ||
|  | trigger_schema	trigger_name | ||
|  | test	tr1 | ||
|  | use test; | ||
|  | drop table t1; | ||
|  | create table t1 (a int not null, b int); | ||
|  | use information_schema; | ||
|  | select column_name, column_default from columns | ||
|  | where table_schema='test' and table_name='t1'; | ||
|  | column_name	column_default | ||
|  | a	NULL | ||
|  | b	NULL | ||
|  | use test; | ||
|  | show columns from t1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | a	int(11)	NO		NULL	 | ||
|  | b	int(11)	YES		NULL	 | ||
|  | drop table t1; | ||
|  | CREATE TABLE t1 (a int); | ||
|  | CREATE TABLE t2 (b int); | ||
|  | SHOW TABLE STATUS FROM test | ||
|  | WHERE name IN ( SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES | ||
|  | WHERE TABLE_SCHEMA='test' AND TABLE_TYPE='BASE TABLE'); | ||
|  | Name	Engine	Version	Row_format	Rows	Avg_row_length	Data_length	Max_data_length	Index_length	Data_free	Auto_increment	Create_time	Update_time	Check_time	Collation	Checksum	Create_options	Comment | ||
|  | t1	MyISAM	10	Fixed	0	0	0	#	1024	0	NULL	#	#	NULL	latin1_swedish_ci	NULL		 | ||
|  | t2	MyISAM	10	Fixed	0	0	0	#	1024	0	NULL	#	#	NULL	latin1_swedish_ci	NULL		 | ||
|  | DROP TABLE t1,t2; | ||
|  | create table t1(f1 int); | ||
|  | create view v1 (c) as select f1 from t1; | ||
|  | select database(); | ||
|  | database() | ||
|  | NULL | ||
|  | show fields from test.v1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | c	int(11)	YES		NULL	 | ||
|  | drop view v1; | ||
|  | drop table t1; | ||
|  | alter database information_schema; | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 | ||
|  | drop database information_schema; | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | drop table information_schema.tables; | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | alter table information_schema.tables; | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | use information_schema; | ||
|  | create temporary table schemata(f1 char(10)); | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | CREATE PROCEDURE p1 () | ||
|  | BEGIN | ||
|  | SELECT 'foo' FROM DUAL; | ||
|  | END | | ||
|  | ERROR 42000: Unknown database 'information_schema' | ||
|  | select ROUTINE_NAME from routines where ROUTINE_SCHEMA='information_schema'; | ||
|  | ROUTINE_NAME | ||
|  | grant all on information_schema.* to 'user1'@'localhost'; | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | grant select on information_schema.* to 'user1'@'localhost'; | ||
|  | ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema' | ||
|  | use test; | ||
|  | create table t1(id int); | ||
|  | insert into t1(id) values (1); | ||
|  | select 1 from (select 1 from test.t1) a; | ||
|  | 1 | ||
|  | 1 | ||
|  | use information_schema; | ||
|  | select 1 from (select 1 from test.t1) a; | ||
|  | 1 | ||
|  | 1 | ||
|  | use test; | ||
|  | drop table t1; | ||
|  | create table t1 (f1 int(11)); | ||
|  | create view v1 as select * from t1; | ||
|  | drop table t1; | ||
|  | select table_type from information_schema.tables | ||
|  | where table_name="v1"; | ||
|  | table_type | ||
|  | VIEW | ||
|  | drop view v1; | ||
|  | create temporary table t1(f1 int, index(f1)); | ||
|  | show columns from t1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | f1	int(11)	YES	MUL	NULL	 | ||
|  | describe t1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | f1	int(11)	YES	MUL	NULL	 | ||
|  | show indexes from t1; | ||
|  | Table	Non_unique	Key_name	Seq_in_index	Column_name	Collation	Cardinality	Sub_part	Packed	Null	Index_type	Comment | ||
|  | t1	1	f1	1	f1	A	NULL	NULL	NULL	YES	BTREE	 | ||
|  | drop table t1; | ||
|  | create table t1(f1 binary(32), f2 varbinary(64)); | ||
|  | select character_maximum_length, character_octet_length | ||
|  | from information_schema.columns where table_name='t1'; | ||
|  | character_maximum_length	character_octet_length | ||
|  | 32	32 | ||
|  | 64	64 | ||
|  | drop table t1; | ||
|  | CREATE TABLE t1 (f1 BIGINT, f2 VARCHAR(20), f3 BIGINT); | ||
|  | INSERT INTO t1 SET f1 = 1, f2 = 'Schoenenbourg', f3 = 1; | ||
|  | CREATE FUNCTION func2() RETURNS BIGINT RETURN 1; | ||
|  | CREATE FUNCTION func1() RETURNS BIGINT | ||
|  | BEGIN | ||
|  | RETURN ( SELECT COUNT(*) FROM INFORMATION_SCHEMA.VIEWS); | ||
|  | END// | ||
|  | CREATE VIEW v1 AS SELECT 1 FROM t1 | ||
|  | WHERE f3 = (SELECT func2 ()); | ||
|  | SELECT func1(); | ||
|  | func1() | ||
|  | 1 | ||
|  | DROP TABLE t1; | ||
|  | DROP VIEW v1; | ||
|  | DROP FUNCTION func1; | ||
|  | DROP FUNCTION func2; | ||
|  | select column_type, group_concat(table_schema, '.', table_name), count(*) as num | ||
|  | from information_schema.columns where | ||
|  | table_schema='information_schema' and | ||
|  | (column_type = 'varchar(7)' or column_type = 'varchar(20)' | ||
|  |  or column_type = 'varchar(27)') | ||
|  | group by column_type order by num; | ||
|  | column_type	group_concat(table_schema, '.', table_name)	num | ||
|  | varchar(27)	information_schema.COLUMNS	1 | ||
|  | varchar(7)	information_schema.ROUTINES,information_schema.VIEWS	2 | ||
|  | varchar(20)	information_schema.FILES,information_schema.FILES,information_schema.PLUGINS,information_schema.PLUGINS,information_schema.PLUGINS,information_schema.PROFILING	6 | ||
|  | create table t1(f1 char(1) not null, f2 char(9) not null) | ||
|  | default character set utf8; | ||
|  | select CHARACTER_MAXIMUM_LENGTH, CHARACTER_OCTET_LENGTH from | ||
|  | information_schema.columns where table_schema='test' and table_name = 't1'; | ||
|  | CHARACTER_MAXIMUM_LENGTH	CHARACTER_OCTET_LENGTH | ||
|  | 1	3 | ||
|  | 9	27 | ||
|  | drop table t1; | ||
|  | use mysql; | ||
|  | INSERT INTO `proc` VALUES ('test','','PROCEDURE','','SQL','CONTAINS_SQL', | ||
|  | 'NO','DEFINER','','','BEGIN\r\n  \r\nEND','root@%','2006-03-02 18:40:03', | ||
|  | '2006-03-02 18:40:03','','','utf8','utf8_general_ci','utf8_general_ci','n/a'); | ||
|  | select routine_name from information_schema.routines where ROUTINE_SCHEMA='test'; | ||
|  | routine_name | ||
|  | 
 | ||
|  | delete from proc where name=''; | ||
|  | use test; | ||
|  | grant select on test.* to mysqltest_1@localhost; | ||
|  | create table t1 (id int); | ||
|  | create view v1 as select * from t1; | ||
|  | create definer = mysqltest_1@localhost | ||
|  | sql security definer view v2 as select 1; | ||
|  | select * from information_schema.views | ||
|  | where table_name='v1' or table_name='v2'; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	VIEW_DEFINITION	CHECK_OPTION	IS_UPDATABLE	DEFINER	SECURITY_TYPE	CHARACTER_SET_CLIENT	COLLATION_CONNECTION | ||
|  | NULL	test	v1		NONE	YES	root@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | NULL	test	v2	select 1 AS `1`	NONE	NO	mysqltest_1@localhost	DEFINER	latin1	latin1_swedish_ci | ||
|  | drop view v1, v2; | ||
|  | drop table t1; | ||
|  | drop user mysqltest_1@localhost; | ||
|  | set @a:= '.'; | ||
|  | create table t1(f1 char(5)); | ||
|  | create table t2(f1 char(5)); | ||
|  | select concat(@a, table_name), @a, table_name | ||
|  | from information_schema.tables where table_schema = 'test'; | ||
|  | concat(@a, table_name)	@a	table_name | ||
|  | .t1	.	t1 | ||
|  | .t2	.	t2 | ||
|  | drop table t1,t2; | ||
|  | DROP PROCEDURE IF EXISTS p1; | ||
|  | DROP FUNCTION IF EXISTS f1; | ||
|  | CREATE PROCEDURE p1() SET @a= 1; | ||
|  | CREATE FUNCTION f1() RETURNS INT RETURN @a + 1; | ||
|  | CREATE USER mysql_bug20230@localhost; | ||
|  | GRANT EXECUTE ON PROCEDURE p1 TO mysql_bug20230@localhost; | ||
|  | GRANT EXECUTE ON FUNCTION f1 TO mysql_bug20230@localhost; | ||
|  | SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA='test'; | ||
|  | ROUTINE_NAME	ROUTINE_DEFINITION | ||
|  | f1	RETURN @a + 1 | ||
|  | p1	SET @a= 1 | ||
|  | SHOW CREATE PROCEDURE p1; | ||
|  | Procedure	sql_mode	Create Procedure	character_set_client	collation_connection	Database Collation | ||
|  | p1		CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`() | ||
|  | SET @a= 1	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | SHOW CREATE FUNCTION f1; | ||
|  | Function	sql_mode	Create Function	character_set_client	collation_connection	Database Collation | ||
|  | f1		CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11) | ||
|  | RETURN @a + 1	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA='test'; | ||
|  | ROUTINE_NAME	ROUTINE_DEFINITION | ||
|  | f1	NULL | ||
|  | p1	NULL | ||
|  | SHOW CREATE PROCEDURE p1; | ||
|  | Procedure	sql_mode	Create Procedure	character_set_client	collation_connection	Database Collation | ||
|  | p1		NULL	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | SHOW CREATE FUNCTION f1; | ||
|  | Function	sql_mode	Create Function	character_set_client	collation_connection	Database Collation | ||
|  | f1		NULL	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | CALL p1(); | ||
|  | SELECT f1(); | ||
|  | f1() | ||
|  | 2 | ||
|  | DROP FUNCTION f1; | ||
|  | DROP PROCEDURE p1; | ||
|  | DROP USER mysql_bug20230@localhost; | ||
|  | SELECT t.table_name, c1.column_name | ||
|  | FROM information_schema.tables t | ||
|  | INNER JOIN | ||
|  | information_schema.columns c1 | ||
|  | ON t.table_schema = c1.table_schema AND | ||
|  | t.table_name = c1.table_name | ||
|  | WHERE t.table_schema = 'information_schema' AND | ||
|  | c1.ordinal_position = | ||
|  | ( SELECT COALESCE(MIN(c2.ordinal_position),1) | ||
|  | FROM information_schema.columns c2 | ||
|  | WHERE c2.table_schema = t.table_schema AND | ||
|  | c2.table_name = t.table_name AND | ||
|  | c2.column_name LIKE '%SCHEMA%' | ||
|  |         ); | ||
|  | table_name	column_name | ||
|  | CHARACTER_SETS	CHARACTER_SET_NAME | ||
|  | COLLATIONS	COLLATION_NAME | ||
|  | COLLATION_CHARACTER_SET_APPLICABILITY	COLLATION_NAME | ||
|  | COLUMNS	TABLE_SCHEMA | ||
|  | COLUMN_PRIVILEGES	TABLE_SCHEMA | ||
|  | ENGINES	ENGINE | ||
|  | EVENTS	EVENT_SCHEMA | ||
|  | FILES	TABLE_SCHEMA | ||
|  | GLOBAL_STATUS	VARIABLE_NAME | ||
|  | GLOBAL_VARIABLES	VARIABLE_NAME | ||
|  | KEY_COLUMN_USAGE	CONSTRAINT_SCHEMA | ||
|  | PARTITIONS	TABLE_SCHEMA | ||
|  | PLUGINS	PLUGIN_NAME | ||
|  | PROCESSLIST	ID | ||
|  | PROFILING	QUERY_ID | ||
|  | REFERENTIAL_CONSTRAINTS	CONSTRAINT_SCHEMA | ||
|  | ROUTINES	ROUTINE_SCHEMA | ||
|  | SCHEMATA	SCHEMA_NAME | ||
|  | SCHEMA_PRIVILEGES	TABLE_SCHEMA | ||
|  | SESSION_STATUS	VARIABLE_NAME | ||
|  | SESSION_VARIABLES	VARIABLE_NAME | ||
|  | STATISTICS	TABLE_SCHEMA | ||
|  | TABLES	TABLE_SCHEMA | ||
|  | TABLE_CONSTRAINTS	CONSTRAINT_SCHEMA | ||
|  | TABLE_PRIVILEGES	TABLE_SCHEMA | ||
|  | TRIGGERS	TRIGGER_SCHEMA | ||
|  | USER_PRIVILEGES	GRANTEE | ||
|  | VIEWS	TABLE_SCHEMA | ||
|  | SELECT t.table_name, c1.column_name | ||
|  | FROM information_schema.tables t | ||
|  | INNER JOIN | ||
|  | information_schema.columns c1 | ||
|  | ON t.table_schema = c1.table_schema AND | ||
|  | t.table_name = c1.table_name | ||
|  | WHERE t.table_schema = 'information_schema' AND | ||
|  | c1.ordinal_position = | ||
|  | ( SELECT COALESCE(MIN(c2.ordinal_position),1) | ||
|  | FROM information_schema.columns c2 | ||
|  | WHERE c2.table_schema = 'information_schema' AND | ||
|  | c2.table_name = t.table_name AND | ||
|  | c2.column_name LIKE '%SCHEMA%' | ||
|  |         ); | ||
|  | table_name	column_name | ||
|  | CHARACTER_SETS	CHARACTER_SET_NAME | ||
|  | COLLATIONS	COLLATION_NAME | ||
|  | COLLATION_CHARACTER_SET_APPLICABILITY	COLLATION_NAME | ||
|  | COLUMNS	TABLE_SCHEMA | ||
|  | COLUMN_PRIVILEGES	TABLE_SCHEMA | ||
|  | ENGINES	ENGINE | ||
|  | EVENTS	EVENT_SCHEMA | ||
|  | FILES	TABLE_SCHEMA | ||
|  | GLOBAL_STATUS	VARIABLE_NAME | ||
|  | GLOBAL_VARIABLES	VARIABLE_NAME | ||
|  | KEY_COLUMN_USAGE	CONSTRAINT_SCHEMA | ||
|  | PARTITIONS	TABLE_SCHEMA | ||
|  | PLUGINS	PLUGIN_NAME | ||
|  | PROCESSLIST	ID | ||
|  | PROFILING	QUERY_ID | ||
|  | REFERENTIAL_CONSTRAINTS	CONSTRAINT_SCHEMA | ||
|  | ROUTINES	ROUTINE_SCHEMA | ||
|  | SCHEMATA	SCHEMA_NAME | ||
|  | SCHEMA_PRIVILEGES	TABLE_SCHEMA | ||
|  | SESSION_STATUS	VARIABLE_NAME | ||
|  | SESSION_VARIABLES	VARIABLE_NAME | ||
|  | STATISTICS	TABLE_SCHEMA | ||
|  | TABLES	TABLE_SCHEMA | ||
|  | TABLE_CONSTRAINTS	CONSTRAINT_SCHEMA | ||
|  | TABLE_PRIVILEGES	TABLE_SCHEMA | ||
|  | TRIGGERS	TRIGGER_SCHEMA | ||
|  | USER_PRIVILEGES	GRANTEE | ||
|  | VIEWS	TABLE_SCHEMA | ||
|  | SELECT MAX(table_name) FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test'); | ||
|  | MAX(table_name) | ||
|  | VIEWS | ||
|  | SELECT table_name from information_schema.tables | ||
|  | WHERE table_name=(SELECT MAX(table_name) | ||
|  | FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test')); | ||
|  | table_name | ||
|  | VIEWS | ||
|  | DROP TABLE IF EXISTS bug23037; | ||
|  | DROP FUNCTION IF EXISTS get_value; | ||
|  | SELECT COLUMN_NAME, MD5(COLUMN_DEFAULT), LENGTH(COLUMN_DEFAULT) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='bug23037'; | ||
|  | COLUMN_NAME	MD5(COLUMN_DEFAULT)	LENGTH(COLUMN_DEFAULT) | ||
|  | fld1	7cf7a6782be951a1f2464a350da926a5	65532 | ||
|  | SELECT MD5(get_value()); | ||
|  | MD5(get_value()) | ||
|  | 7cf7a6782be951a1f2464a350da926a5 | ||
|  | SELECT COLUMN_NAME, MD5(COLUMN_DEFAULT), LENGTH(COLUMN_DEFAULT), COLUMN_DEFAULT=get_value() FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='bug23037'; | ||
|  | COLUMN_NAME	MD5(COLUMN_DEFAULT)	LENGTH(COLUMN_DEFAULT)	COLUMN_DEFAULT=get_value() | ||
|  | fld1	7cf7a6782be951a1f2464a350da926a5	65532	1 | ||
|  | DROP TABLE bug23037; | ||
|  | DROP FUNCTION get_value; | ||
|  | create view v1 as | ||
|  | select table_schema as object_schema, | ||
|  | table_name   as object_name, | ||
|  | table_type   as object_type | ||
|  | from information_schema.tables | ||
|  | order by object_schema; | ||
|  | explain select * from v1; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	tables	ALL	NULL	NULL	NULL	NULL	NULL	Open_frm_only; Scanned all databases; Using filesort | ||
|  | explain select * from (select table_name from information_schema.tables) as a; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	PRIMARY	<derived2>	system	NULL	NULL	NULL	NULL	0	const row not found | ||
|  | 2	DERIVED	tables	ALL	NULL	NULL	NULL	NULL	NULL	Skip_open_table; Scanned all databases | ||
|  | drop view v1; | ||
|  | create table t1 (f1 int(11)); | ||
|  | create table t2 (f1 int(11), f2 int(11)); | ||
|  | select table_name from information_schema.tables | ||
|  | where table_schema = 'test' and table_name not in | ||
|  | (select table_name from information_schema.columns | ||
|  | where table_schema = 'test' and column_name = 'f3'); | ||
|  | table_name | ||
|  | t1 | ||
|  | t2 | ||
|  | drop table t1,t2; | ||
|  | select 1 as f1 from information_schema.tables  where "CHARACTER_SETS"= | ||
|  | (select cast(table_name as char)  from information_schema.tables | ||
|  | order by table_name limit 1) limit 1; | ||
|  | f1 | ||
|  | 1 | ||
|  | select t.table_name, group_concat(t.table_schema, '.', t.table_name), | ||
|  | count(*) as num1 | ||
|  | from information_schema.tables t | ||
|  | inner join information_schema.columns c1 | ||
|  | on t.table_schema = c1.table_schema AND t.table_name = c1.table_name | ||
|  | where t.table_schema = 'information_schema' and | ||
|  | c1.ordinal_position = | ||
|  | (select isnull(c2.column_type) - | ||
|  | isnull(group_concat(c2.table_schema, '.', c2.table_name)) + | ||
|  | count(*) as num | ||
|  | from information_schema.columns c2 where | ||
|  | c2.table_schema='information_schema' and | ||
|  | (c2.column_type = 'varchar(7)' or c2.column_type = 'varchar(20)') | ||
|  | group by c2.column_type order by num limit 1) | ||
|  | group by t.table_name order by num1, t.table_name; | ||
|  | table_name	group_concat(t.table_schema, '.', t.table_name)	num1 | ||
|  | CHARACTER_SETS	information_schema.CHARACTER_SETS	1 | ||
|  | COLLATIONS	information_schema.COLLATIONS	1 | ||
|  | COLLATION_CHARACTER_SET_APPLICABILITY	information_schema.COLLATION_CHARACTER_SET_APPLICABILITY	1 | ||
|  | COLUMNS	information_schema.COLUMNS	1 | ||
|  | COLUMN_PRIVILEGES	information_schema.COLUMN_PRIVILEGES	1 | ||
|  | ENGINES	information_schema.ENGINES	1 | ||
|  | EVENTS	information_schema.EVENTS	1 | ||
|  | FILES	information_schema.FILES	1 | ||
|  | GLOBAL_STATUS	information_schema.GLOBAL_STATUS	1 | ||
|  | GLOBAL_VARIABLES	information_schema.GLOBAL_VARIABLES	1 | ||
|  | KEY_COLUMN_USAGE	information_schema.KEY_COLUMN_USAGE	1 | ||
|  | PARTITIONS	information_schema.PARTITIONS	1 | ||
|  | PLUGINS	information_schema.PLUGINS	1 | ||
|  | PROCESSLIST	information_schema.PROCESSLIST	1 | ||
|  | PROFILING	information_schema.PROFILING	1 | ||
|  | REFERENTIAL_CONSTRAINTS	information_schema.REFERENTIAL_CONSTRAINTS	1 | ||
|  | ROUTINES	information_schema.ROUTINES	1 | ||
|  | SCHEMATA	information_schema.SCHEMATA	1 | ||
|  | SCHEMA_PRIVILEGES	information_schema.SCHEMA_PRIVILEGES	1 | ||
|  | SESSION_STATUS	information_schema.SESSION_STATUS	1 | ||
|  | SESSION_VARIABLES	information_schema.SESSION_VARIABLES	1 | ||
|  | STATISTICS	information_schema.STATISTICS	1 | ||
|  | TABLES	information_schema.TABLES	1 | ||
|  | TABLE_CONSTRAINTS	information_schema.TABLE_CONSTRAINTS	1 | ||
|  | TABLE_PRIVILEGES	information_schema.TABLE_PRIVILEGES	1 | ||
|  | TRIGGERS	information_schema.TRIGGERS	1 | ||
|  | USER_PRIVILEGES	information_schema.USER_PRIVILEGES	1 | ||
|  | VIEWS	information_schema.VIEWS	1 | ||
|  | create table t1(f1 int); | ||
|  | create view v1 as select f1+1 as a from t1; | ||
|  | create table t2 (f1 int, f2 int); | ||
|  | create view v2 as select f1+1 as a, f2 as b from t2; | ||
|  | select table_name, is_updatable from information_schema.views; | ||
|  | table_name	is_updatable | ||
|  | v1	NO | ||
|  | v2	YES | ||
|  | delete from v1; | ||
|  | drop view v1,v2; | ||
|  | drop table t1,t2; | ||
|  | alter database; | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 | ||
|  | alter database test; | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 | ||
|  | create database mysqltest; | ||
|  | create table mysqltest.t1(a int, b int, c int); | ||
|  | create trigger mysqltest.t1_ai after insert on mysqltest.t1 | ||
|  | for each row set @a = new.a + new.b + new.c; | ||
|  | grant select(b) on mysqltest.t1 to mysqltest_1@localhost; | ||
|  | select trigger_name from information_schema.triggers | ||
|  | where event_object_table='t1'; | ||
|  | trigger_name | ||
|  | t1_ai | ||
|  | show triggers from mysqltest; | ||
|  | Trigger	Event	Table	Statement	Timing	Created	sql_mode	Definer	character_set_client	collation_connection	Database Collation | ||
|  | t1_ai	INSERT	t1	set @a = new.a + new.b + new.c	AFTER	NULL		root@localhost	latin1	latin1_swedish_ci	latin1_swedish_ci | ||
|  | show columns from t1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | b	int(11)	YES		NULL	 | ||
|  | select column_name from information_schema.columns where table_name='t1'; | ||
|  | column_name | ||
|  | b | ||
|  | show triggers; | ||
|  | Trigger	Event	Table	Statement	Timing	Created	sql_mode	Definer	character_set_client	collation_connection	Database Collation | ||
|  | select trigger_name from information_schema.triggers | ||
|  | where event_object_table='t1'; | ||
|  | trigger_name | ||
|  | drop user mysqltest_1@localhost; | ||
|  | drop database mysqltest; | ||
|  | create table t1 ( | ||
|  | f1 varchar(50), | ||
|  | f2 varchar(50) not null, | ||
|  | f3 varchar(50) default '', | ||
|  | f4 varchar(50) default NULL, | ||
|  | f5 bigint not null, | ||
|  | f6 bigint not null default 10, | ||
|  | f7 datetime not null, | ||
|  | f8 datetime default '2006-01-01' | ||
|  | ); | ||
|  | select column_default from information_schema.columns where table_name= 't1'; | ||
|  | column_default | ||
|  | NULL | ||
|  | NULL | ||
|  | 
 | ||
|  | NULL | ||
|  | NULL | ||
|  | 10 | ||
|  | NULL | ||
|  | 2006-01-01 00:00:00 | ||
|  | show columns from t1; | ||
|  | Field	Type	Null	Key	Default	Extra | ||
|  | f1	varchar(50)	YES		NULL	 | ||
|  | f2	varchar(50)	NO		NULL	 | ||
|  | f3	varchar(50)	YES			 | ||
|  | f4	varchar(50)	YES		NULL	 | ||
|  | f5	bigint(20)	NO		NULL	 | ||
|  | f6	bigint(20)	NO		10	 | ||
|  | f7	datetime	NO		NULL	 | ||
|  | f8	datetime	YES		2006-01-01 00:00:00	 | ||
|  | drop table t1; | ||
|  | show fields from information_schema.table_names; | ||
|  | ERROR 42S02: Unknown table 'table_names' in information_schema | ||
|  | show keys from information_schema.table_names; | ||
|  | ERROR 42S02: Unknown table 'table_names' in information_schema | ||
|  | USE information_schema; | ||
|  | SET max_heap_table_size = 16384; | ||
|  | CREATE TABLE test.t1( a INT ); | ||
|  | SELECT * | ||
|  | FROM tables ta | ||
|  | JOIN collations co ON ( co.collation_name = ta.table_catalog ) | ||
|  | JOIN character_sets cs ON ( cs.character_set_name = ta.table_catalog ); | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	TABLE_TYPE	ENGINE	VERSION	ROW_FORMAT	TABLE_ROWS	AVG_ROW_LENGTH	DATA_LENGTH	MAX_DATA_LENGTH	INDEX_LENGTH	DATA_FREE	AUTO_INCREMENT	CREATE_TIME	UPDATE_TIME	CHECK_TIME	TABLE_COLLATION	CHECKSUM	CREATE_OPTIONS	TABLE_COMMENT	COLLATION_NAME	CHARACTER_SET_NAME	ID	IS_DEFAULT	IS_COMPILED	SORTLEN	CHARACTER_SET_NAME	DEFAULT_COLLATE_NAME	DESCRIPTION	MAXLEN | ||
|  | DROP TABLE test.t1; | ||
|  | SET max_heap_table_size = DEFAULT; | ||
|  | USE test; | ||
|  | End of 5.0 tests. | ||
|  | select * from information_schema.engines WHERE ENGINE="MyISAM"; | ||
|  | ENGINE	SUPPORT	COMMENT	TRANSACTIONS	XA	SAVEPOINTS | ||
|  | MyISAM	DEFAULT	Default engine as of MySQL 3.23 with great performance	NO	NO	NO | ||
|  | grant select on *.* to user3148@localhost; | ||
|  | select user,db from information_schema.processlist; | ||
|  | user	db | ||
|  | user3148	test | ||
|  | drop user user3148@localhost; | ||
|  | DROP TABLE IF EXISTS server_status; | ||
|  | DROP EVENT IF EXISTS event_status; | ||
|  | SET GLOBAL event_scheduler=1; | ||
|  | CREATE EVENT event_status | ||
|  | ON SCHEDULE AT NOW() | ||
|  | ON COMPLETION NOT PRESERVE | ||
|  | DO | ||
|  | BEGIN | ||
|  | CREATE TABLE server_status | ||
|  | SELECT variable_name | ||
|  | FROM information_schema.global_status | ||
|  | WHERE variable_name LIKE 'ABORTED_CONNECTS' OR | ||
|  | variable_name LIKE 'BINLOG_CACHE_DISK_USE'; | ||
|  | END$$ | ||
|  | SELECT variable_name FROM server_status; | ||
|  | variable_name | ||
|  | ABORTED_CONNECTS | ||
|  | BINLOG_CACHE_DISK_USE | ||
|  | DROP TABLE server_status; | ||
|  | SET GLOBAL event_scheduler=0; | ||
|  | explain select table_name from information_schema.views where | ||
|  | table_schema='test' and table_name='v1'; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	views	ALL	NULL	TABLE_SCHEMA,TABLE_NAME	NULL	NULL	NULL	Using where; Open_frm_only; Scanned 0 databases | ||
|  | explain select * from information_schema.tables; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	tables	ALL	NULL	NULL	NULL	NULL	NULL	Open_full_table; Scanned all databases | ||
|  | explain select * from information_schema.collations; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	collations	ALL	NULL	NULL	NULL	NULL	NULL	 | ||
|  | explain select * from information_schema.tables where | ||
|  | table_schema='test' and table_name= 't1'; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	tables	ALL	NULL	TABLE_SCHEMA,TABLE_NAME	NULL	NULL	NULL	Using where; Open_full_table; Scanned 0 databases | ||
|  | explain select table_name, table_type from information_schema.tables | ||
|  | where table_schema='test'; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	tables	ALL	NULL	TABLE_SCHEMA	NULL	NULL	NULL	Using where; Open_frm_only; Scanned 1 database | ||
|  | explain select b.table_name | ||
|  | from information_schema.tables a, information_schema.columns b | ||
|  | where a.table_name='t1' and a.table_schema='test' and b.table_name=a.table_name; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	a	ALL	NULL	TABLE_SCHEMA,TABLE_NAME	NULL	NULL	NULL	Using where; Skip_open_table; Scanned 0 databases | ||
|  | 1	SIMPLE	b	ALL	NULL	NULL	NULL	NULL	NULL	Using where; Open_frm_only; Scanned all databases; Using join buffer | ||
|  | SELECT * FROM INFORMATION_SCHEMA.SCHEMATA | ||
|  | WHERE SCHEMA_NAME = 'mysqltest'; | ||
|  | CATALOG_NAME	SCHEMA_NAME	DEFAULT_CHARACTER_SET_NAME	DEFAULT_COLLATION_NAME	SQL_PATH | ||
|  | SELECT * FROM INFORMATION_SCHEMA.SCHEMATA | ||
|  | WHERE SCHEMA_NAME = ''; | ||
|  | CATALOG_NAME	SCHEMA_NAME	DEFAULT_CHARACTER_SET_NAME	DEFAULT_COLLATION_NAME	SQL_PATH | ||
|  | SELECT * FROM INFORMATION_SCHEMA.SCHEMATA | ||
|  | WHERE SCHEMA_NAME = 'test'; | ||
|  | CATALOG_NAME	SCHEMA_NAME	DEFAULT_CHARACTER_SET_NAME	DEFAULT_COLLATION_NAME	SQL_PATH | ||
|  | NULL	test	latin1	latin1_swedish_ci	NULL | ||
|  | select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='mysql' AND TABLE_NAME='nonexisting'; | ||
|  | count(*) | ||
|  | 0 | ||
|  | select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='mysql' AND TABLE_NAME=''; | ||
|  | count(*) | ||
|  | 0 | ||
|  | select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='' AND TABLE_NAME=''; | ||
|  | count(*) | ||
|  | 0 | ||
|  | select count(*) from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='' AND TABLE_NAME='nonexisting'; | ||
|  | count(*) | ||
|  | 0 | ||
|  | CREATE VIEW v1 | ||
|  | AS SELECT * | ||
|  | FROM information_schema.tables; | ||
|  | SELECT VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS where TABLE_NAME = 'v1'; | ||
|  | VIEW_DEFINITION | ||
|  | select `tables`.`TABLE_CATALOG` AS `TABLE_CATALOG`,`tables`.`TABLE_SCHEMA` AS `TABLE_SCHEMA`,`tables`.`TABLE_NAME` AS `TABLE_NAME`,`tables`.`TABLE_TYPE` AS `TABLE_TYPE`,`tables`.`ENGINE` AS `ENGINE`,`tables`.`VERSION` AS `VERSION`,`tables`.`ROW_FORMAT` AS `ROW_FORMAT`,`tables`.`TABLE_ROWS` AS `TABLE_ROWS`,`tables`.`AVG_ROW_LENGTH` AS `AVG_ROW_LENGTH`,`tables`.`DATA_LENGTH` AS `DATA_LENGTH`,`tables`.`MAX_DATA_LENGTH` AS `MAX_DATA_LENGTH`,`tables`.`INDEX_LENGTH` AS `INDEX_LENGTH`,`tables`.`DATA_FREE` AS `DATA_FREE`,`tables`.`AUTO_INCREMENT` AS `AUTO_INCREMENT`,`tables`.`CREATE_TIME` AS `CREATE_TIME`,`tables`.`UPDATE_TIME` AS `UPDATE_TIME`,`tables`.`CHECK_TIME` AS `CHECK_TIME`,`tables`.`TABLE_COLLATION` AS `TABLE_COLLATION`,`tables`.`CHECKSUM` AS `CHECKSUM`,`tables`.`CREATE_OPTIONS` AS `CREATE_OPTIONS`,`tables`.`TABLE_COMMENT` AS `TABLE_COMMENT` from `information_schema`.`tables` | ||
|  | DROP VIEW v1; | ||
|  | SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA | ||
|  | WHERE SCHEMA_NAME ='information_schema'; | ||
|  | SCHEMA_NAME | ||
|  | information_schema | ||
|  | SELECT TABLE_COLLATION FROM INFORMATION_SCHEMA.TABLES | ||
|  | WHERE TABLE_SCHEMA='mysql' and TABLE_NAME= 'db'; | ||
|  | TABLE_COLLATION | ||
|  | utf8_bin | ||
|  | select * from information_schema.columns where table_schema = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	COLUMN_DEFAULT	IS_NULLABLE	DATA_TYPE	CHARACTER_MAXIMUM_LENGTH	CHARACTER_OCTET_LENGTH	NUMERIC_PRECISION	NUMERIC_SCALE	CHARACTER_SET_NAME	COLLATION_NAME	COLUMN_TYPE	COLUMN_KEY	EXTRA	PRIVILEGES	COLUMN_COMMENT | ||
|  | select * from `information_schema`.`COLUMNS` where `TABLE_NAME` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	COLUMN_DEFAULT	IS_NULLABLE	DATA_TYPE	CHARACTER_MAXIMUM_LENGTH	CHARACTER_OCTET_LENGTH	NUMERIC_PRECISION	NUMERIC_SCALE	CHARACTER_SET_NAME	COLLATION_NAME	COLUMN_TYPE	COLUMN_KEY	EXTRA	PRIVILEGES	COLUMN_COMMENT | ||
|  | select * from `information_schema`.`KEY_COLUMN_USAGE` where `TABLE_SCHEMA` = NULL; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	POSITION_IN_UNIQUE_CONSTRAINT	REFERENCED_TABLE_SCHEMA	REFERENCED_TABLE_NAME	REFERENCED_COLUMN_NAME | ||
|  | select * from `information_schema`.`KEY_COLUMN_USAGE` where `TABLE_NAME` = NULL; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	COLUMN_NAME	ORDINAL_POSITION	POSITION_IN_UNIQUE_CONSTRAINT	REFERENCED_TABLE_SCHEMA	REFERENCED_TABLE_NAME	REFERENCED_COLUMN_NAME | ||
|  | select * from `information_schema`.`PARTITIONS` where `TABLE_SCHEMA` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PARTITION_NAME	SUBPARTITION_NAME	PARTITION_ORDINAL_POSITION	SUBPARTITION_ORDINAL_POSITION	PARTITION_METHOD	SUBPARTITION_METHOD	PARTITION_EXPRESSION	SUBPARTITION_EXPRESSION	PARTITION_DESCRIPTION	TABLE_ROWS	AVG_ROW_LENGTH	DATA_LENGTH	MAX_DATA_LENGTH	INDEX_LENGTH	DATA_FREE	CREATE_TIME	UPDATE_TIME	CHECK_TIME	CHECKSUM	PARTITION_COMMENT	NODEGROUP	TABLESPACE_NAME | ||
|  | select * from `information_schema`.`PARTITIONS` where `TABLE_NAME` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	PARTITION_NAME	SUBPARTITION_NAME	PARTITION_ORDINAL_POSITION	SUBPARTITION_ORDINAL_POSITION	PARTITION_METHOD	SUBPARTITION_METHOD	PARTITION_EXPRESSION	SUBPARTITION_EXPRESSION	PARTITION_DESCRIPTION	TABLE_ROWS	AVG_ROW_LENGTH	DATA_LENGTH	MAX_DATA_LENGTH	INDEX_LENGTH	DATA_FREE	CREATE_TIME	UPDATE_TIME	CHECK_TIME	CHECKSUM	PARTITION_COMMENT	NODEGROUP	TABLESPACE_NAME | ||
|  | select * from `information_schema`.`REFERENTIAL_CONSTRAINTS` where `CONSTRAINT_SCHEMA` = NULL; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	UNIQUE_CONSTRAINT_CATALOG	UNIQUE_CONSTRAINT_SCHEMA	UNIQUE_CONSTRAINT_NAME	MATCH_OPTION	UPDATE_RULE	DELETE_RULE	TABLE_NAME	REFERENCED_TABLE_NAME | ||
|  | select * from `information_schema`.`REFERENTIAL_CONSTRAINTS` where `TABLE_NAME` = NULL; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	UNIQUE_CONSTRAINT_CATALOG	UNIQUE_CONSTRAINT_SCHEMA	UNIQUE_CONSTRAINT_NAME	MATCH_OPTION	UPDATE_RULE	DELETE_RULE	TABLE_NAME	REFERENCED_TABLE_NAME | ||
|  | select * from information_schema.schemata where schema_name = NULL; | ||
|  | CATALOG_NAME	SCHEMA_NAME	DEFAULT_CHARACTER_SET_NAME	DEFAULT_COLLATION_NAME	SQL_PATH | ||
|  | select * from `information_schema`.`STATISTICS` where `TABLE_SCHEMA` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	NON_UNIQUE	INDEX_SCHEMA	INDEX_NAME	SEQ_IN_INDEX	COLUMN_NAME	COLLATION	CARDINALITY	SUB_PART	PACKED	NULLABLE	INDEX_TYPE	COMMENT | ||
|  | select * from `information_schema`.`STATISTICS` where `TABLE_NAME` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	NON_UNIQUE	INDEX_SCHEMA	INDEX_NAME	SEQ_IN_INDEX	COLUMN_NAME	COLLATION	CARDINALITY	SUB_PART	PACKED	NULLABLE	INDEX_TYPE	COMMENT | ||
|  | select * from information_schema.tables where table_schema = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	TABLE_TYPE	ENGINE	VERSION	ROW_FORMAT	TABLE_ROWS	AVG_ROW_LENGTH	DATA_LENGTH	MAX_DATA_LENGTH	INDEX_LENGTH	DATA_FREE	AUTO_INCREMENT	CREATE_TIME	UPDATE_TIME	CHECK_TIME	TABLE_COLLATION	CHECKSUM	CREATE_OPTIONS	TABLE_COMMENT | ||
|  | select * from information_schema.tables where table_catalog = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	TABLE_TYPE	ENGINE	VERSION	ROW_FORMAT	TABLE_ROWS	AVG_ROW_LENGTH	DATA_LENGTH	MAX_DATA_LENGTH	INDEX_LENGTH	DATA_FREE	AUTO_INCREMENT	CREATE_TIME	UPDATE_TIME	CHECK_TIME	TABLE_COLLATION	CHECKSUM	CREATE_OPTIONS	TABLE_COMMENT | ||
|  | select * from information_schema.tables where table_name = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	TABLE_TYPE	ENGINE	VERSION	ROW_FORMAT	TABLE_ROWS	AVG_ROW_LENGTH	DATA_LENGTH	MAX_DATA_LENGTH	INDEX_LENGTH	DATA_FREE	AUTO_INCREMENT	CREATE_TIME	UPDATE_TIME	CHECK_TIME	TABLE_COLLATION	CHECKSUM	CREATE_OPTIONS	TABLE_COMMENT | ||
|  | select * from `information_schema`.`TABLE_CONSTRAINTS` where `TABLE_SCHEMA` = NULL; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_SCHEMA	TABLE_NAME	CONSTRAINT_TYPE | ||
|  | select * from `information_schema`.`TABLE_CONSTRAINTS` where `TABLE_NAME` = NULL; | ||
|  | CONSTRAINT_CATALOG	CONSTRAINT_SCHEMA	CONSTRAINT_NAME	TABLE_SCHEMA	TABLE_NAME	CONSTRAINT_TYPE | ||
|  | select * from `information_schema`.`TRIGGERS` where `EVENT_OBJECT_SCHEMA` = NULL; | ||
|  | TRIGGER_CATALOG	TRIGGER_SCHEMA	TRIGGER_NAME	EVENT_MANIPULATION	EVENT_OBJECT_CATALOG	EVENT_OBJECT_SCHEMA	EVENT_OBJECT_TABLE	ACTION_ORDER	ACTION_CONDITION	ACTION_STATEMENT	ACTION_ORIENTATION	ACTION_TIMING	ACTION_REFERENCE_OLD_TABLE	ACTION_REFERENCE_NEW_TABLE	ACTION_REFERENCE_OLD_ROW	ACTION_REFERENCE_NEW_ROW	CREATED	SQL_MODE	DEFINER	CHARACTER_SET_CLIENT	COLLATION_CONNECTION	DATABASE_COLLATION | ||
|  | select * from `information_schema`.`TRIGGERS` where `EVENT_OBJECT_TABLE` = NULL; | ||
|  | TRIGGER_CATALOG	TRIGGER_SCHEMA	TRIGGER_NAME	EVENT_MANIPULATION	EVENT_OBJECT_CATALOG	EVENT_OBJECT_SCHEMA	EVENT_OBJECT_TABLE	ACTION_ORDER	ACTION_CONDITION	ACTION_STATEMENT	ACTION_ORIENTATION	ACTION_TIMING	ACTION_REFERENCE_OLD_TABLE	ACTION_REFERENCE_NEW_TABLE	ACTION_REFERENCE_OLD_ROW	ACTION_REFERENCE_NEW_ROW	CREATED	SQL_MODE	DEFINER	CHARACTER_SET_CLIENT	COLLATION_CONNECTION	DATABASE_COLLATION | ||
|  | select * from `information_schema`.`VIEWS` where `TABLE_SCHEMA` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	VIEW_DEFINITION	CHECK_OPTION	IS_UPDATABLE	DEFINER	SECURITY_TYPE	CHARACTER_SET_CLIENT	COLLATION_CONNECTION | ||
|  | select * from `information_schema`.`VIEWS` where `TABLE_NAME` = NULL; | ||
|  | TABLE_CATALOG	TABLE_SCHEMA	TABLE_NAME	VIEW_DEFINITION	CHECK_OPTION	IS_UPDATABLE	DEFINER	SECURITY_TYPE	CHARACTER_SET_CLIENT	COLLATION_CONNECTION | ||
|  | explain extended select 1 from information_schema.tables; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	filtered	Extra | ||
|  | 1	SIMPLE	tables	ALL	NULL	NULL	NULL	NULL	NULL	NULL	Skip_open_table; Scanned all databases | ||
|  | Warnings: | ||
|  | Note	1003	select 1 AS `1` from `information_schema`.`tables` | ||
|  | use information_schema; | ||
|  | show events; | ||
|  | Db	Name	Definer	Time zone	Type	Execute at	Interval value	Interval field	Starts	Ends	Status	Originator	character_set_client	collation_connection	Database Collation | ||
|  | show events from information_schema; | ||
|  | Db	Name	Definer	Time zone	Type	Execute at	Interval value	Interval field	Starts	Ends	Status	Originator	character_set_client	collation_connection	Database Collation | ||
|  | show events where Db= 'information_schema'; | ||
|  | Db	Name	Definer	Time zone	Type	Execute at	Interval value	Interval field	Starts	Ends	Status	Originator	character_set_client	collation_connection	Database Collation | ||
|  | use test; | ||
|  | # | ||
|  | # Bug#34166 Server crash in SHOW OPEN TABLES and prelocking | ||
|  | # | ||
|  | drop table if exists t1; | ||
|  | drop function if exists f1; | ||
|  | create table t1 (a int); | ||
|  | create function f1() returns int | ||
|  | begin | ||
|  | insert into t1 (a) values (1); | ||
|  | return 0; | ||
|  | end| | ||
|  | show open tables where f1()=0; | ||
|  | show open tables where f1()=0; | ||
|  | drop table t1; | ||
|  | drop function f1; | ||
|  | select * from information_schema.tables where 1=sleep(100000); | ||
|  | select * from information_schema.columns where 1=sleep(100000); | ||
|  | explain select count(*) from information_schema.tables; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	tables	ALL	NULL	NULL	NULL	NULL	NULL	Skip_open_table; Scanned all databases | ||
|  | explain select count(*) from information_schema.columns; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	columns	ALL	NULL	NULL	NULL	NULL	NULL	Open_frm_only; Scanned all databases | ||
|  | explain select count(*) from information_schema.views; | ||
|  | id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra | ||
|  | 1	SIMPLE	views	ALL	NULL	NULL	NULL	NULL	NULL	Open_frm_only; Scanned all databases | ||
|  | set global init_connect="drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;\ | ||
|  | drop table if exists t1;drop table if exists t1;"; | ||
|  | select * from information_schema.global_variables where variable_name='init_connect'; | ||
|  | VARIABLE_NAME	VARIABLE_VALUE | ||
|  | INIT_CONNECT	drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists t1; | ||
|  | drop table if exists t1;drop table if exists | ||
|  | Warnings: | ||
|  | Warning	1265	Data truncated for column 'VARIABLE_VALUE' at row 1 | ||
|  | set global init_connect=""; | ||
|  | create table t0 select * from information_schema.global_status where VARIABLE_NAME='COM_SELECT'; | ||
|  | SELECT 1; | ||
|  | 1 | ||
|  | 1 | ||
|  | select a.VARIABLE_VALUE - b.VARIABLE_VALUE from t0 b, information_schema.global_status a | ||
|  | where a.VARIABLE_NAME = b.VARIABLE_NAME; | ||
|  | a.VARIABLE_VALUE - b.VARIABLE_VALUE | ||
|  | 2 | ||
|  | drop table t0; | ||
|  | CREATE TABLE t1(a INT) KEY_BLOCK_SIZE=1; | ||
|  | SELECT CREATE_OPTIONS FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1'; | ||
|  | CREATE_OPTIONS | ||
|  | KEY_BLOCK_SIZE=1 | ||
|  | DROP TABLE t1; | ||
|  | SET TIMESTAMP=@@TIMESTAMP + 10000000; | ||
|  | SELECT 'OK' AS TEST_RESULT FROM INFORMATION_SCHEMA.PROCESSLIST WHERE time < 0; | ||
|  | TEST_RESULT | ||
|  | OK | ||
|  | SET TIMESTAMP=DEFAULT; | ||
|  | # | ||
|  | # Bug #50276: Security flaw in INFORMATION_SCHEMA.TABLES | ||
|  | # | ||
|  | CREATE DATABASE db1; | ||
|  | USE db1; | ||
|  | CREATE TABLE t1 (id INT); | ||
|  | CREATE USER nonpriv; | ||
|  | USE test; | ||
|  | # connected as nonpriv | ||
|  | # Should return 0 | ||
|  | SELECT COUNT(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME='t1'; | ||
|  | COUNT(*) | ||
|  | 0 | ||
|  | USE INFORMATION_SCHEMA; | ||
|  | # Should return 0 | ||
|  | SELECT COUNT(*) FROM TABLES WHERE TABLE_NAME='t1'; | ||
|  | COUNT(*) | ||
|  | 0 | ||
|  | # connected as root | ||
|  | DROP USER nonpriv; | ||
|  | DROP TABLE db1.t1; | ||
|  | DROP DATABASE db1; | ||
|  | 
 | ||
|  | Bug#54422 query with = 'variables' | ||
|  | 
 | ||
|  | CREATE TABLE variables(f1 INT); | ||
|  | SELECT COLUMN_DEFAULT, TABLE_NAME | ||
|  | FROM INFORMATION_SCHEMA.COLUMNS | ||
|  | WHERE INFORMATION_SCHEMA.COLUMNS.TABLE_NAME = 'variables'; | ||
|  | COLUMN_DEFAULT	TABLE_NAME | ||
|  | NULL	variables | ||
|  | DROP TABLE variables; | ||
|  | # | ||
|  | # Bug #53814: NUMERIC_PRECISION for unsigned bigint field is 19,  | ||
|  | # should be 20 | ||
|  | # | ||
|  | CREATE TABLE ubig (a BIGINT, b BIGINT UNSIGNED); | ||
|  | SELECT TABLE_NAME, COLUMN_NAME, NUMERIC_PRECISION  | ||
|  | FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='ubig'; | ||
|  | TABLE_NAME	COLUMN_NAME	NUMERIC_PRECISION | ||
|  | ubig	a	19 | ||
|  | ubig	b	20 | ||
|  | INSERT INTO ubig VALUES (0xFFFFFFFFFFFFFFFF,0xFFFFFFFFFFFFFFFF); | ||
|  | Warnings: | ||
|  | Warning	1264	Out of range value for column 'a' at row 1 | ||
|  | SELECT length(CAST(b AS CHAR)) FROM ubig; | ||
|  | length(CAST(b AS CHAR)) | ||
|  | 20 | ||
|  | DROP TABLE ubig; | ||
|  | End of 5.1 tests. |