82 lines
3.1 KiB
Plaintext
82 lines
3.1 KiB
Plaintext
# TestCharsetFeature
|
|
set names gbk;
|
|
select @@character_set_connection;
|
|
select @@collation_connection;
|
|
set @@character_set_client=gbk;
|
|
select @@character_set_client;
|
|
set names utf8mb4;
|
|
set @@character_set_connection=gbk;
|
|
select @@character_set_connection;
|
|
select @@collation_connection;
|
|
-- error 1115
|
|
select _gbk 'a';
|
|
create table t1(a char(10) charset gbk);
|
|
create table t2(a char(10) charset gbk collate gbk_bin);
|
|
create table t3(a char(10)) charset gbk;
|
|
alter table t3 add column b char(10) charset gbk;
|
|
show create table t3;
|
|
create table t4(a char(10));
|
|
alter table t4 add column b char(10) charset gbk;
|
|
show create table t4;
|
|
create table t5(a char(20), b char(20) charset utf8, c binary) charset gbk collate gbk_bin;
|
|
create database test_gbk charset gbk;
|
|
use test_gbk;
|
|
create table t1(a char(10));
|
|
show create table t1;
|
|
drop database test_gbk;
|
|
use executor__charset;
|
|
set names DEFAULT;
|
|
|
|
# TestCharsetFeatureCollation
|
|
drop table if exists t;
|
|
create table t(ascii_char char(10) character set ascii,gbk_char char(10) character set gbk collate gbk_bin,latin_char char(10) character set latin1,utf8mb4_char char(10) character set utf8mb4);
|
|
insert into t values ('a', 'a', 'a', 'a'), ('a', '啊', '€', 'ㅂ');
|
|
select collation(concat(ascii_char, gbk_char)) from t;
|
|
select collation(concat(gbk_char, ascii_char)) from t;
|
|
select collation(concat(utf8mb4_char, gbk_char)) from t;
|
|
select collation(concat(gbk_char, utf8mb4_char)) from t;
|
|
select collation(concat('啊', convert('啊' using gbk) collate gbk_bin));
|
|
select collation(concat(_latin1 'a', convert('啊' using gbk) collate gbk_bin));
|
|
-- error 1267
|
|
select collation(concat(latin_char, gbk_char)) from t;
|
|
-- error 1267
|
|
select collation(concat(convert('€' using latin1), convert('啊' using gbk) collate gbk_bin));
|
|
-- error 1267
|
|
select collation(concat(utf8mb4_char, gbk_char collate gbk_bin)) from t;
|
|
-- error 1267
|
|
select collation(concat('ㅂ', convert('啊' using gbk) collate gbk_bin));
|
|
-- error 1267
|
|
select collation(concat(ascii_char collate ascii_bin, gbk_char)) from t;
|
|
|
|
# TestCharsetWithPrefixIndex
|
|
drop table if exists t;
|
|
create table t(a char(20) charset gbk, b char(20) charset gbk, primary key (a(2)));
|
|
insert into t values ('a', '中文'), ('中文', '中文'), ('一二三', '一二三'), ('b', '一二三');
|
|
--sorted_result
|
|
select * from t;
|
|
drop table t;
|
|
create table t(a char(20) charset gbk, b char(20) charset gbk, unique index idx_a(a(2)));
|
|
insert into t values ('a', '中文'), ('中文', '中文'), ('一二三', '一二三'), ('b', '一二三');
|
|
--sorted_result
|
|
select * from t;
|
|
|
|
# TestForbidUnsupportedCollations
|
|
-- error 1273
|
|
select 'a' collate utf8_roman_ci;
|
|
-- error 1273
|
|
select cast('a' as char) collate utf8_roman_ci;
|
|
-- error 1273
|
|
set names utf8 collate utf8_roman_ci;
|
|
-- error 1273
|
|
set session collation_server = 'utf8_roman_ci';
|
|
-- error 1273
|
|
set session collation_database = 'utf8_roman_ci';
|
|
-- error 1273
|
|
set session collation_connection = 'utf8_roman_ci';
|
|
-- error 1273
|
|
set global collation_server = 'utf8_roman_ci';
|
|
-- error 1273
|
|
set global collation_database = 'utf8_roman_ci';
|
|
-- error 1273
|
|
set global collation_connection = 'utf8_roman_ci';
|