1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
--source include/have_sjis.inc
--source include/have_innodb.inc
--character_set sjis
--disable_warnings
drop table if exists `sP`;
drop table if exists `sQ`;
drop table if exists `sR`;
drop table if exists `sS`;
drop table if exists `sT`;
drop table if exists `sU`;
drop table if exists `sV`;
drop table if exists `sW`;
drop table if exists `sX`;
drop table if exists t1;
--enable_warnings
#
# Test ENUM values with Japanese characters in sjis encoding
#
SET NAMES sjis;
SET character_set_database = sjis;
CREATE TABLE `sP` (`bP` ENUM('','',''), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = innodb;
CREATE TABLE `sQ` (`bP` ENUM('','',''), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = innodb;
CREATE TABLE `sR` (`bP` ENUM('\','\','\'), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = innodb;
CREATE TABLE `sS` (`bP` ENUM('','',''), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = myisam;
CREATE TABLE `sT` (`bP` ENUM('','',''), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = myisam;
CREATE TABLE `sU` (`bP` ENUM('\','\','\'), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = myisam;
CREATE TABLE `sV` (`bP` ENUM('','',''), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = MEMORY;
CREATE TABLE `sW` (`bP` ENUM('','',''), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = MEMORY;
CREATE TABLE `sX` (`bP` ENUM('\','\','\'), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = MEMORY;
INSERT INTO `sP` VALUES (''),(''),('');
INSERT INTO `sQ` VALUES (''),(''),('');
INSERT INTO `sR` VALUES ('\'),('\'),('\');
INSERT INTO `sS` VALUES (''),(''),('');
INSERT INTO `sT` VALUES (''),(''),('');
INSERT INTO `sU` VALUES ('\'),('\'),('\');
INSERT INTO `sV` VALUES (''),(''),('');
INSERT INTO `sW` VALUES (''),(''),('');
INSERT INTO `sX` VALUES ('\'),('\'),('\');
SELECT * FROM `sP`;
SELECT * FROM `sQ`;
SELECT * FROM `sR`;
SELECT * FROM `sS`;
SELECT * FROM `sT`;
SELECT * FROM `sU`;
SELECT * FROM `sV`;
SELECT * FROM `sW`;
SELECT * FROM `sX`;
SHOW CREATE TABLE `sP`;
SHOW CREATE TABLE `sQ`;
SHOW CREATE TABLE `sR`;
SHOW CREATE TABLE `sS`;
SHOW CREATE TABLE `sT`;
SHOW CREATE TABLE `sU`;
SHOW CREATE TABLE `sV`;
SHOW CREATE TABLE `sW`;
SHOW CREATE TABLE `sX`;
DESC `sP`;
DESC `sQ`;
DESC `sR`;
DESC `sS`;
DESC `sT`;
DESC `sU`;
DESC `sV`;
DESC `sW`;
DESC `sX`;
#
# Test problem with enum values after the colum with NOT NULL restriction
#
ALTER TABLE `sP` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sQ` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sR` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sS` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sT` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sU` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sV` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sW` ADD `bQ` CHAR(1) NOT NULL FIRST;
ALTER TABLE `sX` ADD `bQ` CHAR(1) NOT NULL FIRST;
SHOW CREATE TABLE `sP`;
SHOW CREATE TABLE `sQ`;
SHOW CREATE TABLE `sR`;
SHOW CREATE TABLE `sS`;
SHOW CREATE TABLE `sT`;
SHOW CREATE TABLE `sU`;
SHOW CREATE TABLE `sV`;
SHOW CREATE TABLE `sW`;
SHOW CREATE TABLE `sX`;
#
# Test to distinguish 0x9353 and 0x9373
# Bug#6206 ENUMs are not case sensitive even if declared BINARY
#
CREATE TABLE t1(c1 enum('S','s')) default character set = sjis;
INSERT INTO t1 VALUES('S'),('s');
SELECT * FROM t1 WHERE c1 LIKE 'S';
DROP TABLE t1;
DESC `sP`;
DESC `sQ`;
DESC `sR`;
DESC `sS`;
DESC `sT`;
DESC `sU`;
DESC `sV`;
DESC `sW`;
DESC `sX`;
DROP TABLE `sP`;
DROP TABLE `sQ`;
DROP TABLE `sR`;
DROP TABLE `sS`;
DROP TABLE `sT`;
DROP TABLE `sU`;
DROP TABLE `sV`;
DROP TABLE `sW`;
DROP TABLE `sX`;
|