mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-24 07:13:33 +03:00 
			
		
		
		
	 03d8717ac8
			
		
	
	03d8717ac8
	
	
	
		
			
			fix: return db name for I_S.TABLES(and others) in original letter case. if mysql starts with lower_case_table_names=1 | 2 then original db name is converted to lower case(for I_S tables). It happens when we perform add_table_to_list. to avoid this we make a copy of original db name and use the copy hereafter.
		
			
				
	
	
		
			153 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			153 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #
 | |
| # Test of --lower-case-table-names=2
 | |
| # (User has case insensitive file system and wants to preserve case of
 | |
| # table names)
 | |
| #
 | |
| --source include/have_innodb.inc
 | |
| --require r/lowercase2.require
 | |
| disable_query_log;
 | |
| show variables like "lower_case_table_names";
 | |
| enable_query_log;
 | |
| 
 | |
| --disable_warnings
 | |
| DROP TABLE IF EXISTS t1,t2,t3,t2aA,t1Aa;
 | |
| DROP DATABASE IF EXISTS `TEST_$1`;
 | |
| DROP DATABASE IF EXISTS `test_$1`;
 | |
| DROP DATABASE IF EXISTS mysqltest_LC2;
 | |
| --enable_warnings
 | |
| 
 | |
| CREATE TABLE T1 (a int);
 | |
| INSERT INTO T1 VALUES (1);
 | |
| SHOW TABLES LIKE "T1";
 | |
| SHOW TABLES LIKE "t1";
 | |
| SHOW CREATE TABLE T1;
 | |
| RENAME TABLE T1 TO T2;
 | |
| SHOW TABLES LIKE "T2";
 | |
| SELECT * FROM t2;
 | |
| RENAME TABLE T2 TO t3;
 | |
| SHOW TABLES LIKE "T3";
 | |
| RENAME TABLE T3 TO T1;
 | |
| SHOW TABLES LIKE "T1";
 | |
| ALTER TABLE T1 add b int;
 | |
| SHOW TABLES LIKE "T1";
 | |
| ALTER TABLE T1 RENAME T2;
 | |
| SHOW TABLES LIKE "T2";
 | |
| 
 | |
| LOCK TABLE T2 WRITE;
 | |
| ALTER TABLE T2 drop b;
 | |
| SHOW TABLES LIKE "T2";
 | |
| UNLOCK TABLES;
 | |
| RENAME TABLE T2 TO T1;
 | |
| SHOW TABLES LIKE "T1";
 | |
| SELECT * from T1;
 | |
| DROP TABLE T1;
 | |
| 
 | |
| #
 | |
| # Test database level
 | |
| #
 | |
| 
 | |
| CREATE DATABASE `TEST_$1`;
 | |
| SHOW DATABASES LIKE "TEST%";
 | |
| DROP DATABASE `test_$1`;
 | |
| 
 | |
| #
 | |
| # Test of innodb tables with lower_case_table_names=2
 | |
| #
 | |
| 
 | |
| CREATE TABLE T1 (a int) engine=innodb;
 | |
| INSERT INTO T1 VALUES (1);
 | |
| SHOW TABLES LIKE "T1";
 | |
| SHOW TABLES LIKE "t1";
 | |
| SHOW CREATE TABLE T1;
 | |
| RENAME TABLE T1 TO T2;
 | |
| SHOW TABLES LIKE "T2";
 | |
| SELECT * FROM t2;
 | |
| RENAME TABLE T2 TO t3;
 | |
| SHOW TABLES LIKE "T3";
 | |
| RENAME TABLE T3 TO T1;
 | |
| SHOW TABLES LIKE "T1";
 | |
| ALTER TABLE T1 add b int;
 | |
| SHOW TABLES LIKE "T1";
 | |
| ALTER TABLE T1 RENAME T2;
 | |
| SHOW TABLES LIKE "T2";
 | |
| 
 | |
| LOCK TABLE T2 WRITE;
 | |
| ALTER TABLE T2 drop b;
 | |
| SHOW TABLES LIKE "T2";
 | |
| UNLOCK TABLES;
 | |
| RENAME TABLE T2 TO T1;
 | |
| SHOW TABLES LIKE "T1";
 | |
| SELECT * from T1;
 | |
| DROP TABLE T1;
 | |
| 
 | |
| #
 | |
| # Test problem with temporary tables (Bug #2858)
 | |
| #
 | |
| 
 | |
| create table T1 (EVENT_ID int auto_increment primary key,  LOCATION char(20));
 | |
| insert into T1 values (NULL,"Mic-4"),(NULL,"Mic-5"),(NULL,"Mic-6");
 | |
| SELECT LOCATION FROM T1 WHERE EVENT_ID=2 UNION ALL  SELECT LOCATION FROM T1 WHERE EVENT_ID=3;
 | |
| SELECT LOCATION FROM T1 WHERE EVENT_ID=2 UNION ALL  SELECT LOCATION FROM T1 WHERE EVENT_ID=3;
 | |
| SELECT LOCATION FROM T1 WHERE EVENT_ID=2 UNION ALL  SELECT LOCATION FROM T1 WHERE EVENT_ID=3;
 | |
| drop table T1;
 | |
| 
 | |
| #
 | |
| # Test name conversion with ALTER TABLE / CREATE INDEX (Bug #3109)
 | |
| #
 | |
| 
 | |
| create table T1 (A int);
 | |
| alter table T1 add index (A);
 | |
| show tables like 'T1%';
 | |
| alter table t1 add index (A);
 | |
| show tables like 't1%';
 | |
| drop table t1;
 | |
| 
 | |
| #
 | |
| # Bug #7261: Alter table loses temp table
 | |
| #
 | |
| 
 | |
| create temporary table T1(a int(11), b varchar(8));
 | |
| insert into T1 values (1, 'abc');
 | |
| select * from T1;
 | |
| alter table T1 add index (a);
 | |
| select * from T1;
 | |
| drop table T1;
 | |
| 
 | |
| #
 | |
| # Bug #8355: Tables not dropped from table cache on drop db
 | |
| #
 | |
| create database mysqltest_LC2;
 | |
| use mysqltest_LC2;
 | |
| create table myUC (i int);
 | |
| insert into myUC values (1),(2),(3);
 | |
| select * from myUC;
 | |
| use test;
 | |
| drop database mysqltest_LC2;
 | |
| create database mysqltest_LC2;
 | |
| use mysqltest_LC2;
 | |
| create table myUC (i int);
 | |
| select * from myUC;
 | |
| use test;
 | |
| drop database mysqltest_LC2;
 | |
| 
 | |
| #
 | |
| # Bug #9500: Problem with WHERE clause
 | |
| #
 | |
| create table t2aA (col1 int);
 | |
| create table t1Aa (col1 int);
 | |
| select t1Aa.col1 from t1aA,t2Aa where t1Aa.col1 = t2aA.col1;
 | |
| drop table t2aA, t1Aa;
 | |
| 
 | |
| # End of 4.1 tests
 | |
| 
 | |
| #
 | |
| # Bug#17661 information_schema.SCHEMATA returns uppercase with lower_case_table_names = 1
 | |
| #
 | |
| create database mysqltest_LC2;
 | |
| use mysqltest_LC2;
 | |
| create table myUC (i int);
 | |
| select TABLE_SCHEMA,TABLE_NAME FROM information_schema.TABLES
 | |
| where TABLE_SCHEMA ='mysqltest_LC2';
 | |
| use test;
 | |
| drop database mysqltest_LC2;
 |