1'#--------------------FN_DYNVARS_008_01-------------------------#' 2SET @global_character_set_database = @@global.character_set_database; 3SET @session_character_set_database = @@session.character_set_database; 4SET @session_character_set_server = @@session.character_set_server; 5SET @global_character_set_server = @@global.character_set_server; 6SET @@global.character_set_database = utf8; 7connect con1,localhost,root,,,,; 8connection con1; 9SELECT @@global.character_set_database; 10@@global.character_set_database 11utf8 12SELECT @@session.character_set_database; 13@@session.character_set_database 14latin1 15disconnect con1; 16'#--------------------FN_DYNVARS_008_02-------------------------#' 17connection default; 18DROP TABLE IF EXISTS t1; 19'--check if setting session character_set_database effects new databases' 20SET @@session.character_set_server = utf8; 21SELECT @@session.character_set_database; 22@@session.character_set_database 23latin1 24SET @@session.character_set_database = latin5; 25SELECT @@session.character_set_database; 26@@session.character_set_database 27latin5 28CREATE DATABASE db1; 29USE db1; 30SHOW CREATE DATABASE db1; 31Database Create Database 32db1 CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET utf8 */ 33CREATE TABLE t1(a INT, b VARCHAR(40)); 34SHOW CREATE TABLE t1; 35Table Create Table 36t1 CREATE TABLE `t1` ( 37 `a` int(11) DEFAULT NULL, 38 `b` varchar(40) DEFAULT NULL 39) ENGINE=MyISAM DEFAULT CHARSET=utf8 40DROP TABLE t1; 41DROP DATABASE db1; 42'--ascii character set specified--' 43CREATE DATABASE db1 CHARACTER SET ascii; 44USE db1; 45SHOW CREATE DATABASE db1; 46Database Create Database 47db1 CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET ascii */ 48CREATE TABLE t1(a INT, b VARCHAR(40)); 49SHOW CREATE TABLE t1; 50Table Create Table 51t1 CREATE TABLE `t1` ( 52 `a` int(11) DEFAULT NULL, 53 `b` varchar(40) DEFAULT NULL 54) ENGINE=MyISAM DEFAULT CHARSET=ascii 55DROP TABLE t1; 56DROP DATABASE db1; 57'------Check if load data uses character_set_database----------' 58USE test; 59CREATE TABLE t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=MyISAM CHARACTER SET utf8; 60'Verify with latin'; 61SET @@session.character_set_database = latin1; 62LOAD DATA INFILE 'MYSQLTEST_VARDIR/std_data/charset_utf8.txt' INTO TABLE t1; 63SELECT count(*) FROM t1 WHERE CHAR_LENGTH(a)>1; 64count(*) 652433 66TRUNCATE TABLE t1; 67'Verify with utf8'; 68SET @@session.character_set_database = utf8; 69LOAD DATA INFILE 'MYSQLTEST_VARDIR/std_data/charset_utf8.txt' INTO TABLE t1; 70SELECT count(*) FROM t1 WHERE CHAR_LENGTH(a)>1; 71count(*) 721 73DROP TABLE IF EXISTS t1; 74SET GLOBAL character_set_server=latin5; 75connect con2, localhost, root,,; 76connection con2; 77CREATE DATABASE csdb CHARACTER SET = utf8; 78USE csdb; 79DROP DATABASE csdb; 80SELECT @@character_set_database; 81@@character_set_database 82latin5 83connection default; 84disconnect con2; 85SET @@global.character_set_database = @global_character_set_database; 86SET @@session.character_set_database = @session_character_set_database; 87SET @@session.character_set_server = @session_character_set_server; 88SET @@global.character_set_server = @global_character_set_server; 89