⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ndb_charset.test

📁 这是linux下运行的mysql软件包,可用于linux 下安装 php + mysql + apach 的网络配置
💻 TEST
字号:
--source include/have_ndb.inc-- source include/not_embedded.inc--disable_warningsdrop table if exists t1;--enable_warnings## Minimal NDB charset test.## pk - binarycreate table t1 (  a char(3) character set latin1 collate latin1_bin primary key) engine=ndb;# okinsert into t1 values('aAa');insert into t1 values('aaa');insert into t1 values('AAA');# 3select * from t1 order by a;# 1select * from t1 where a = 'aAa';# 1select * from t1 where a = 'aaa';# 0select * from t1 where a = 'AaA';# 1select * from t1 where a = 'AAA';drop table t1;# pk - case insensitivecreate table t1 (  a char(3) character set latin1 collate latin1_swedish_ci primary key) engine=ndb;# okinsert into t1 values('aAa');# fail--error 1062insert into t1 values('aaa');--error 1062insert into t1 values('AAA');# 1select * from t1 order by a;# 1select * from t1 where a = 'aAa';# 1select * from t1 where a = 'aaa';# 1select * from t1 where a = 'AaA';# 1select * from t1 where a = 'AAA';drop table t1;# pk - varcharcreate table t1 (  a varchar(20) character set latin1 collate latin1_swedish_ci primary key) engine=ndb;#insert into t1 values ('A'),('b '),('C  '),('d      '),('E'),('f');-- error 1062insert into t1 values('b');-- error 1062insert into t1 values('a         ');#select a,length(a) from t1 order by a;select a,length(a) from t1 order by a desc;select * from t1 where a = 'a';select * from t1 where a = 'a   ';select * from t1 where a = 'd';drop table t1;# unique hash index - binarycreate table t1 (  p int primary key,  a char(3) character set latin1 collate latin1_bin not null,  unique key(a)) engine=ndb;# okinsert into t1 values(1, 'aAa');insert into t1 values(2, 'aaa');insert into t1 values(3, 'AAA');# 3select * from t1 order by p;# 1select * from t1 where a = 'aAa';# 1select * from t1 where a = 'aaa';# 0select * from t1 where a = 'AaA';# 1select * from t1 where a = 'AAA';drop table t1;# unique hash index - case insensitivecreate table t1 (  p int primary key,  a char(3) character set latin1 collate latin1_swedish_ci not null,  unique key(a)) engine=ndb;# okinsert into t1 values(1, 'aAa');# fail--error 1062insert into t1 values(2, 'aaa');--error 1062insert into t1 values(3, 'AAA');# 1select * from t1 order by p;# 1select * from t1 where a = 'aAa';# 1select * from t1 where a = 'aaa';# 1select * from t1 where a = 'AaA';# 1select * from t1 where a = 'AAA';drop table t1;# unique hash index - varcharcreate table t1 (  p int primary key,  a varchar(20) character set latin1 collate latin1_swedish_ci not null,  unique key(a)) engine=ndb;#insert into t1 values (1,'A'),(2,'b '),(3,'C  '),(4,'d      '),(5,'E'),(6,'f');-- error 1062insert into t1 values(99,'b');-- error 1062insert into t1 values(99,'a         ');#select a,length(a) from t1 order by a;select a,length(a) from t1 order by a desc;select * from t1 where a = 'a';select * from t1 where a = 'a   ';select * from t1 where a = 'd';drop table t1;# ordered index - binarycreate table t1 (  p int primary key,  a char(3) character set latin1 collate latin1_bin not null,  index(a)) engine=ndb;# okinsert into t1 values(1, 'aAa');insert into t1 values(2, 'aaa');insert into t1 values(3, 'AAA');insert into t1 values(4, 'aAa');insert into t1 values(5, 'aaa');insert into t1 values(6, 'AAA');# 6select * from t1 order by p;# planexplain select * from t1 where a = 'zZz' order by p;# 2select * from t1 where a = 'aAa' order by p;# 2select * from t1 where a = 'aaa' order by p;# 0select * from t1 where a = 'AaA' order by p;# 2select * from t1 where a = 'AAA' order by p;drop table t1;# ordered index - case insensitivecreate table t1 (  p int primary key,  a char(3) character set latin1 collate latin1_swedish_ci not null,  index(a)) engine=ndb;# okinsert into t1 values(1, 'aAa');insert into t1 values(2, 'aaa');insert into t1 values(3, 'AAA');insert into t1 values(4, 'aAa');insert into t1 values(5, 'aaa');insert into t1 values(6, 'AAA');# 6select * from t1 order by p;# planexplain select * from t1 where a = 'zZz' order by p;# 6select * from t1 where a = 'aAa' order by p;# 6select * from t1 where a = 'aaa' order by p;# 6select * from t1 where a = 'AaA' order by p;# 6select * from t1 where a = 'AAA' order by p;drop table t1;# ordered index - varcharcreate table t1 (  p int primary key,  a varchar(20) character set latin1 collate latin1_swedish_ci not null,  index(a, p)) engine=ndb;#insert into t1 values (1,'A'),(2,'b '),(3,'C  '),(4,'d      '),(5,'E'),(6,'f');insert into t1 values (7,'a'),(8,'B '),(9,'c  '),(10,'D'),(11,'e'),(12,'F  ');select p,a,length(a) from t1 order by a, p;select * from t1 where a = 'a  ' order by a desc, p desc;select * from t1 where a >= 'D' order by a, p;select * from t1 where a < 'D' order by a, p;#select count(*) from t1 x, t1 y, t1 z where x.a = y.a and y.a = z.a;drop table t1;# minimal multi-byte test# removed by jonas as this requires a configure --with-extra-charsets#create table t1 (#  a char(5) character set ucs2,#  b varchar(7) character set utf8,#  primary key(a, b)#) engine=ndb;##insert into t1 values#  ('a','A '),('B   ','b'),('c','C    '),('D','d'),('e  ','E'),('F','f  '),#  ('A','b '),('b   ','C'),('C','d  '),('d','E'),('E  ','f'),#  ('a','C '),('B   ','d'),('c','E  '),('D','f');#-- error 1062#insert into t1 values('d','f');##select a,b,length(a),length(b) from t1 order by a,b limit 3;#select a,b,length(a),length(b) from t1 order by a desc, b desc limit 3;#select a,b,length(a),length(b) from t1 where a='c' and b='c';#drop table t1;# bug#14007create table t1 (  a char(10) primary key) engine=ndbcluster default charset=latin1;insert into t1 values ('aaabb');select * from t1;replace into t1 set a = 'AAABB';select * from t1;replace into t1 set a = 'aAaBb';select * from t1;replace into t1 set a = 'aaabb';select * from t1;drop table t1;# End of 4.1 tests

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -