mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 15:50:51 +03:00 
			
		
		
		
	At most one transaction can be active at a time for temporary tables. There is no need to check previous version of record for the temporary tables.
		
			
				
	
	
		
			666 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			666 lines
		
	
	
		
			22 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # files in MYSQL_DATA_DIR
 | |
| ibtmp1
 | |
| create temporary table t1 (i int, f float, c char(100)) engine=innodb;
 | |
| insert into t1 values (100, 1.1, 'pune');
 | |
| insert into t1 values (99, 1.2, 'mumbai');
 | |
| insert into t1 values (98, 1.3, 'jaipur');
 | |
| insert into t1 values (97, 1.4, 'delhi');
 | |
| insert into t1 values (96, 1.5, 'ahmedabad');
 | |
| select * from t1;
 | |
| i	f	c
 | |
| 100	1.1	pune
 | |
| 99	1.2	mumbai
 | |
| 98	1.3	jaipur
 | |
| 97	1.4	delhi
 | |
| 96	1.5	ahmedabad
 | |
| select * from t1 where i = 98;
 | |
| i	f	c
 | |
| 98	1.3	jaipur
 | |
| select * from t1 where i < 100;
 | |
| i	f	c
 | |
| 99	1.2	mumbai
 | |
| 98	1.3	jaipur
 | |
| 97	1.4	delhi
 | |
| 96	1.5	ahmedabad
 | |
| explain select * from t1 where f > 1.29999;
 | |
| id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 | |
| 1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	5	Using where
 | |
| alter table t1 add index sec_index(f);
 | |
| explain select * from t1 where f > 1.29999;
 | |
| id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 | |
| 1	SIMPLE	t1	ALL	sec_index	NULL	NULL	NULL	5	Using where
 | |
| select * from t1 where f > 1.29999;
 | |
| i	f	c
 | |
| 98	1.3	jaipur
 | |
| 97	1.4	delhi
 | |
| 96	1.5	ahmedabad
 | |
| explain select * from t1 where i = 100;
 | |
| id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 | |
| 1	SIMPLE	t1	ALL	NULL	NULL	NULL	NULL	5	Using where
 | |
| alter table t1 add unique index pri_index(i);
 | |
| explain select * from t1 where i = 100;
 | |
| id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 | |
| 1	SIMPLE	t1	const	pri_index	pri_index	5	const	1	
 | |
| select * from t1 where i = 100;
 | |
| i	f	c
 | |
| 100	1.1	pune
 | |
| delete from t1 where i < 97;
 | |
| select * from t1;
 | |
| i	f	c
 | |
| 100	1.1	pune
 | |
| 99	1.2	mumbai
 | |
| 98	1.3	jaipur
 | |
| 97	1.4	delhi
 | |
| insert into t1 values (96, 1.5, 'kolkata');
 | |
| select * from t1;
 | |
| i	f	c
 | |
| 100	1.1	pune
 | |
| 99	1.2	mumbai
 | |
| 98	1.3	jaipur
 | |
| 97	1.4	delhi
 | |
| 96	1.5	kolkata
 | |
| update t1 set f = 1.44 where c = 'delhi';
 | |
| select * from t1;
 | |
| i	f	c
 | |
| 100	1.1	pune
 | |
| 99	1.2	mumbai
 | |
| 98	1.3	jaipur
 | |
| 97	1.44	delhi
 | |
| 96	1.5	kolkata
 | |
| truncate table t1;
 | |
| insert into t1 values (100, 1.1, 'pune');
 | |
| insert into t1 values (99, 1.2, 'mumbai');
 | |
| insert into t1 values (98, 1.3, 'jaipur');
 | |
| insert into t1 values (97, 1.4, 'delhi');
 | |
| insert into t1 values (96, 1.5, 'ahmedabad');
 | |
| select * from t1;
 | |
| i	f	c
 | |
| 100	1.1	pune
 | |
| 99	1.2	mumbai
 | |
| 98	1.3	jaipur
 | |
| 97	1.4	delhi
 | |
| 96	1.5	ahmedabad
 | |
| alter table t1 discard tablespace;
 | |
| ERROR HY000: Cannot DISCARD/IMPORT tablespace associated with temporary table
 | |
| alter table t1 import tablespace;
 | |
| ERROR HY000: Cannot DISCARD/IMPORT tablespace associated with temporary table
 | |
| drop temporary table t1;
 | |
| create temporary table t1
 | |
| (keyc int, c1 char(100), c2 char(100),
 | |
| primary key(keyc)) engine = innodb;
 | |
| CREATE PROCEDURE populate_t1()
 | |
| BEGIN
 | |
| DECLARE i INT DEFAULT 1;
 | |
| while (i <= 20000) DO
 | |
| insert into t1 values (i, 'a', 'b');
 | |
| SET i = i + 1;
 | |
| END WHILE;
 | |
| END|
 | |
| set autocommit=0;
 | |
| select count(*) from t1;
 | |
| count(*)
 | |
| 0
 | |
| call populate_t1();
 | |
| select count(*) from t1;
 | |
| count(*)
 | |
| 20000
 | |
| select * from t1 limit 10;
 | |
| keyc	c1	c2
 | |
| 1	a	b
 | |
| 2	a	b
 | |
| 3	a	b
 | |
| 4	a	b
 | |
| 5	a	b
 | |
| 6	a	b
 | |
| 7	a	b
 | |
| 8	a	b
 | |
| 9	a	b
 | |
| 10	a	b
 | |
| set autocommit=1;
 | |
| truncate table t1;
 | |
| select * from t1;
 | |
| keyc	c1	c2
 | |
| # test condition of full-temp-tablespace
 | |
| create temporary table t1
 | |
| (keyc int, c1 char(100), c2 char(100),
 | |
| primary key(keyc)) engine = innodb;
 | |
| begin;
 | |
| call populate_t1();
 | |
| ERROR HY000: The table 't1' is full
 | |
| drop procedure populate_t1;
 | |
| # test read-only mode
 | |
| # files in MYSQL_DATA_DIR
 | |
| select * from t1;
 | |
| ERROR 42S02: Table 'test.t1' doesn't exist
 | |
| show tables;
 | |
| Tables_in_test
 | |
| create temporary table t1 (keyc int, c1 char(100), c2 char(100)) engine = innodb;
 | |
| ERROR HY000: Can't create table `test`.`t1` (errno: 165 "Table is read only")
 | |
| # test various bad start-up parameters
 | |
| FOUND 2 /InnoDB: Unable to create temporary file/ in mysqld.1.err
 | |
| FOUND 1 /innodb_temporary and innodb_system file names seem to be the same/ in mysqld.1.err
 | |
| SELECT * FROM INFORMATION_SCHEMA.ENGINES WHERE engine = 'innodb'
 | |
| AND support IN ('YES', 'DEFAULT', 'ENABLED');
 | |
| ENGINE	SUPPORT	COMMENT	TRANSACTIONS	XA	SAVEPOINTS
 | |
| FOUND 1 /support raw device/ in mysqld.1.err
 | |
| SELECT * FROM INFORMATION_SCHEMA.ENGINES WHERE engine = 'innodb'
 | |
| AND support IN ('YES', 'DEFAULT', 'ENABLED');
 | |
| ENGINE	SUPPORT	COMMENT	TRANSACTIONS	XA	SAVEPOINTS
 | |
| FOUND 2 /support raw device/ in mysqld.1.err
 | |
| SELECT * FROM INFORMATION_SCHEMA.ENGINES WHERE engine = 'innodb'
 | |
| AND support IN ('YES', 'DEFAULT', 'ENABLED');
 | |
| ENGINE	SUPPORT	COMMENT	TRANSACTIONS	XA	SAVEPOINTS
 | |
| FOUND 1 /InnoDB: syntax error in file path/ in mysqld.1.err
 | |
| SELECT * FROM INFORMATION_SCHEMA.ENGINES WHERE engine = 'innodb'
 | |
| AND support IN ('YES', 'DEFAULT', 'ENABLED');
 | |
| ENGINE	SUPPORT	COMMENT	TRANSACTIONS	XA	SAVEPOINTS
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = compressed;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = compressed key_block_size = 8;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = dynamic;
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| drop table t;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = dynamic;
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| drop table t;
 | |
| set innodb_strict_mode = off;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = compressed key_block_size = 8;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| set innodb_strict_mode = default;
 | |
| drop table t;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = compressed;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| #files in MYSQL_TMP_DIR, expecting only default temporary tablespace file
 | |
| ibtmp1
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = dynamic;
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| drop table t;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = dynamic;
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| drop table t;
 | |
| set innodb_strict_mode = off;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = dynamic key_block_size = 4;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| drop table t;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb row_format = compact;
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| drop table t;
 | |
| create temporary table t (
 | |
| i int)
 | |
| engine = innodb key_block_size = 4;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| show warnings;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| drop table t;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB KEY_BLOCK_SIZE = 4;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=4
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = REDUNDANT;
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = COMPACT;
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB KEY_BLOCK_SIZE = 4;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=4
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = COMPRESSED;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = COMPRESSED KEY_BLOCK_SIZE = 8;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = DYNAMIC KEY_BLOCK_SIZE = 8;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC KEY_BLOCK_SIZE=8
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = DYNAMIC;
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY
 | |
| ) ENGINE = InnoDB ROW_FORMAT = REDUNDANT;
 | |
| ALTER TABLE t1 ROW_FORMAT = COMPRESSED;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
 | |
| ALTER TABLE t1 KEY_BLOCK_SIZE = 4;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4
 | |
| ALTER TABLE t1 KEY_BLOCK_SIZE = 4 ROW_FORMAT = COMPRESSED;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4
 | |
| ALTER TABLE t1 ROW_FORMAT = DYNAMIC KEY_BLOCK_SIZE = 4;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC KEY_BLOCK_SIZE=4
 | |
| ALTER TABLE t1 ROW_FORMAT = DYNAMIC;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=4.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC KEY_BLOCK_SIZE=4
 | |
| DROP TABLE t1;
 | |
| set innodb_strict_mode = ON;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB KEY_BLOCK_SIZE = 4;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB KEY_BLOCK_SIZE = 4, ROW_FORMAT = COMPACT;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = REDUNDANT;
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB KEY_BLOCK_SIZE = 4;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = COMPRESSED;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = COMPRESSED KEY_BLOCK_SIZE = 8;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = COMPRESSED KEY_BLOCK_SIZE = 7;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY,
 | |
| c CHAR(10) NOT NULL
 | |
| ) ENGINE = InnoDB ROW_FORMAT = DYNAMIC;
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `c` char(10) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1 (
 | |
| i INT NOT NULL PRIMARY KEY
 | |
| ) ENGINE = InnoDB ROW_FORMAT = REDUNDANT;
 | |
| ALTER TABLE t1 ROW_FORMAT = COMPRESSED;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| ALTER TABLE t1 KEY_BLOCK_SIZE = 4;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| ALTER TABLE t1 ROW_FORMAT = DYNAMIC KEY_BLOCK_SIZE = 4;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| ALTER TABLE t1 ROW_FORMAT = DYNAMIC;
 | |
| set innodb_strict_mode = OFF;
 | |
| ALTER TABLE t1 ROW_FORMAT = COMPRESSED;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| set innodb_strict_mode = ON;
 | |
| ALTER TABLE t1 ROW_FORMAT = DYNAMIC;
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
 | |
| set innodb_strict_mode = OFF;
 | |
| ALTER TABLE t1 ROW_FORMAT = COMPRESSED;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| ALTER TABLE t1 KEY_BLOCK_SIZE = 8;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Warning	1478	InnoDB: KEY_BLOCK_SIZE is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: ignoring KEY_BLOCK_SIZE=8.
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| set innodb_strict_mode = ON;
 | |
| ALTER TABLE t1 ADD COLUMN j INT;
 | |
| ERROR HY000: CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| SHOW WARNINGS;
 | |
| Level	Code	Message
 | |
| Error	4047	CREATE TEMPORARY TABLE is not allowed with ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE.
 | |
| Warning	1030	Got error 140 "Wrong create options" from storage engine InnoDB
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`)
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8
 | |
| set innodb_strict_mode = OFF;
 | |
| ALTER TABLE t1 KEY_BLOCK_SIZE = 0;
 | |
| Warnings:
 | |
| Warning	1478	InnoDB: ROW_FORMAT=COMPRESSED is ignored for TEMPORARY TABLE.
 | |
| Warning	1478	InnoDB: assuming ROW_FORMAT=DYNAMIC.
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   PRIMARY KEY (`i`) KEY_BLOCK_SIZE=8
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED
 | |
| ALTER TABLE t1 ROW_FORMAT = DYNAMIC;
 | |
| set innodb_strict_mode = ON;
 | |
| ALTER TABLE t1 ADD COLUMN j INT;
 | |
| SHOW CREATE TABLE t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TEMPORARY TABLE `t1` (
 | |
|   `i` int(11) NOT NULL,
 | |
|   `j` int(11) DEFAULT NULL,
 | |
|   PRIMARY KEY (`i`) KEY_BLOCK_SIZE=8
 | |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
 | |
| DROP TABLE t1;
 | |
| CREATE TEMPORARY TABLE t1(f1 INT, KEY(f1)) ENGINE=InnoDB;
 | |
| INSERT INTO t1 VALUES(NULL);
 | |
| UPDATE t1 SET f1 = 0;
 | |
| START TRANSACTION;
 | |
| UPDATE t1 SET f1 = 4;
 | |
| UPDATE t1 SET f1 = 0;
 | |
| ROLLBACK;
 | |
| SELECT * FROM t1;
 | |
| f1
 | |
| 0
 | |
| DROP TABLE t1;
 | |
| create procedure t1_proc()
 | |
| begin
 | |
| DECLARE var INT UNSIGNED;
 | |
| CREATE TEMPORARY TABLE t1(f1 INT UNSIGNED, f2 INT UNSIGNED, KEY( f1, f2 ) )engine=innodb;
 | |
| SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
 | |
| START TRANSACTION;
 | |
| INSERT INTO t1 SET f1 = 1, f2 = 1;
 | |
| UPDATE t1 SET f2 = 2;
 | |
| SET var = ( SELECT 1 FROM t1 );
 | |
| DROP TABLE t1;
 | |
| END//
 | |
| call t1_proc;
 | |
| drop procedure t1_proc;
 |