mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
ndb - wl-1442 new varchar
mysql-test/r/ndb_alter_table.result: wl-1442 new varchar mysql-test/r/ndb_bitfield.result: wl-1442 new varchar mysql-test/r/ndb_charset.result: wl-1442 new varchar mysql-test/t/ndb_charset.test: wl-1442 new varchar ndb/include/kernel/signaldata/DictTabInfo.hpp: wl-1442 new varchar ndb/include/ndb_constants.h: wl-1442 new varchar ndb/include/ndbapi/NdbDictionary.hpp: wl-1442 new varchar ndb/include/util/NdbSqlUtil.hpp: wl-1442 new varchar ndb/src/common/util/NdbSqlUtil.cpp: wl-1442 new varchar ndb/src/kernel/blocks/dbacc/DbaccMain.cpp: wl-1442 new varchar ndb/src/kernel/blocks/dbdict/Dbdict.cpp: wl-1442 new varchar ndb/src/kernel/blocks/dbtc/Dbtc.hpp: wl-1442 new varchar ndb/src/kernel/blocks/dbtc/DbtcMain.cpp: wl-1442 new varchar ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp: wl-1442 new varchar ndb/src/kernel/blocks/dbtux/DbtuxScan.cpp: wl-1442 new varchar ndb/src/ndbapi/NdbDictionary.cpp: wl-1442 new varchar ndb/src/ndbapi/NdbDictionaryImpl.cpp: wl-1442 new varchar ndb/src/ndbapi/NdbDictionaryImpl.hpp: wl-1442 new varchar ndb/src/ndbapi/NdbOperationDefine.cpp: wl-1442 new varchar ndb/src/ndbapi/NdbOperationSearch.cpp: wl-1442 new varchar ndb/src/ndbapi/NdbRecAttr.cpp: wl-1442 new varchar ndb/src/ndbapi/NdbTransaction.cpp: wl-1442 new varchar ndb/test/ndbapi/testOIBasic.cpp: wl-1442 new varchar sql/ha_ndbcluster.cc: wl-1442 new varchar
This commit is contained in:
@@ -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 % ');
|
||||
|
||||
Reference in New Issue
Block a user