mariadb/mysql-test/suite/jp/t/jp_where_sjis.test
2025-04-29 13:53:16 +10:00

93 lines
3.7 KiB
Text
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

--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`;
--enable_warnings
#
# Test Displaying Japanese characters using WHERE condition in sjis encoding
#
SET NAMES sjis;
SET character_set_database = sjis;
CREATE TABLE `sP` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = innodb;
CREATE TABLE `sQ` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = innodb;
CREATE TABLE `sR` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = innodb;
CREATE TABLE `sS` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = myisam;
CREATE TABLE `sT` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = myisam;
CREATE TABLE `sU` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = myisam;
CREATE TABLE `sV` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = MEMORY;
CREATE TABLE `sW` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = MEMORY;
CREATE TABLE `sX` (`bP` char(20), INDEX(`bP`)) DEFAULT CHARSET = sjis engine = MEMORY;
#Load the following data in each table
# jisx0201 hankaku-katakana data
# jisx0208 data
# jisx0212 supplemental character data
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0201_sjis.dat' INTO TABLE `sP`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0208_sjis.dat' INTO TABLE `sQ`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0208_sjis2.dat' INTO TABLE `sR`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0201_sjis.dat' INTO TABLE `sS`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0208_sjis.dat' INTO TABLE `sT`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0208_sjis2.dat' INTO TABLE `sU`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0201_sjis.dat' INTO TABLE `sV`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0208_sjis.dat' INTO TABLE `sW`;
LOAD DATA LOCAL INFILE 'suite/jp/std_data/jisx0208_sjis2.dat' INTO TABLE `sX`;
#InnoDB
SELECT * FROM `sP` WHERE `bP` = '°±²³´µ¶·¸¹º»¼½¾¿';
SELECT * FROM `sQ` WHERE `bP` = '<27>EŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±';
SELECT * FROM `sR` WHERE `bP` = 'ƒ\<5C>\•\—\<5C>\‰\Ž\<5C>\“\”\\˜\\\™\š\\œ\<5C>\ž\';
#MyISAM
SELECT * FROM `sS` WHERE `bP` = '°±²³´µ¶·¸¹º»¼½¾¿';
SELECT * FROM `sT` WHERE `bP` = '<27>EŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±';
SELECT * FROM `sU` WHERE `bP` = 'ƒ\<5C>\•\—\<5C>\‰\Ž\<5C>\“\”\\˜\\\™\š\\œ\<5C>\ž\';
#MEMORY
SELECT * FROM `sV` WHERE `bP` = '°±²³´µ¶·¸¹º»¼½¾¿';
SELECT * FROM `sW` WHERE `bP` = '<27>EŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±';
SELECT * FROM `sX` WHERE `bP` = 'ƒ\<5C>\•\—\<5C>\‰\Ž\<5C>\“\”\\˜\\\™\š\\œ\<5C>\ž\';
#Test to distinguish 0x9353 and 0x9373
--disable_warnings
DROP TABLE IF EXISTS t1;
DROP TABLE IF EXISTS t2;
DROP TABLE IF EXISTS t3;
--enable_warnings
CREATE TABLE t1(c1 char(1)) default charset = sjis engine=innodb;
CREATE TABLE t2(c1 char(1)) default charset = sjis engine=myisam;
CREATE TABLE t3(c1 char(1)) default charset = sjis engine=MEMORY;
INSERT INTO t1 VALUES('“S'),('“s');
INSERT INTO t2 VALUES('“S'),('“s');
INSERT INTO t3 VALUES('“S'),('“s');
SELECT * FROM t1 WHERE c1 = '“S';
SELECT * FROM t2 WHERE c1 = '“S';
SELECT * FROM t3 WHERE c1 = '“S';
SELECT * FROM t1 WHERE c1 = '“s';
SELECT * FROM t2 WHERE c1 = '“s';
SELECT * FROM t3 WHERE c1 = '“s';
DROP TABLE t1;
DROP TABLE t2;
DROP TABLE t3;
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`;