summaryrefslogtreecommitdiff
path: root/mysql-test/t/ndb_charset.test
diff options
context:
space:
mode:
authorpekka@mysql.com <>2005-01-07 11:55:20 +0100
committerpekka@mysql.com <>2005-01-07 11:55:20 +0100
commitf3103c489ca1b189166f8e37972b8d9cd4c3b22b (patch)
tree56e42d07f6ec8428d0ac03e0621935d6a69a10ad /mysql-test/t/ndb_charset.test
parentf105070eff89188d4f34d04f8f658e5435473234 (diff)
downloadmariadb-git-f3103c489ca1b189166f8e37972b8d9cd4c3b22b.tar.gz
ndb - wl-1442 new varchar
Diffstat (limited to 'mysql-test/t/ndb_charset.test')
-rw-r--r--mysql-test/t/ndb_charset.test80
1 files changed, 79 insertions, 1 deletions
diff --git a/mysql-test/t/ndb_charset.test b/mysql-test/t/ndb_charset.test
index 1b9e7e8bfcc..ab2bbcc3ad8 100644
--- a/mysql-test/t/ndb_charset.test
+++ b/mysql-test/t/ndb_charset.test
@@ -53,6 +53,25 @@ select * from t1 where a = 'AaA';
select * from t1 where a = 'AAA';
drop table t1;
+# pk - varchar
+
+create 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 1062
+insert into t1 values('b');
+-- error 1062
+insert 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 - binary
create table t1 (
@@ -102,6 +121,27 @@ select * from t1 where a = 'AaA';
select * from t1 where a = 'AAA';
drop table t1;
+# unique hash index - varchar
+
+create 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 1062
+insert into t1 values(99,'b');
+-- error 1062
+insert 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 - binary
create table t1 (
@@ -158,9 +198,47 @@ select * from t1 where a = 'AaA' order by p;
select * from t1 where a = 'AAA' order by p;
drop table t1;
+# ordered index - varchar
+
+create 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
+
+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
create table t1 (
- a varchar(10) primary key
+ a char(10) primary key
) engine=ndb;
insert into t1 values ('jonas % ');
replace into t1 values ('jonas % ');