mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 14:33:32 +03:00 
			
		
		
		
	new file mysql_fix_privilege_tables.sql, mysql_create_system_tables.sh: Adding true BINARY/VARBINARY: fixing "password" type, not to be 0x00-padding. Many files: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. Adding true BINARY/VARBINARY: new pad_char structure member. ctype-bin.c: Adding true BINARY/VARBINARY: new pad_char structure member. New strnxfrm, with two trailing length bytes. field.cc: Adding true BINARY/VARBINARY. sql/field.cc: Adding true BINARY/VARBINARY. strings/ctype-big5.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-bin.c: Adding true BINARY/VARBINARY: new pad_char structure member. New strnxfrm, with two trailing length bytes. strings/ctype-cp932.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-czech.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-euc_kr.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-eucjpms.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-extra.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-gb2312.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-gbk.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-latin1.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-simple.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-sjis.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-tis620.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-uca.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-ucs2.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-ujis.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-utf8.c: Adding true BINARY/VARBINARY: new pad_char structure member. strings/ctype-win1250ch.c: Adding true BINARY/VARBINARY: new pad_char structure member. include/m_ctype.h: Adding true BINARY/VARBINARY: new pad_char structure member. mysql-test/t/alter_table.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/binary.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/cast.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/ctype_cp1251.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/ctype_many.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/federated.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/func_in.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/ndb_condition_pushdown.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/ndb_types.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/sp.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/t/type_blob.test: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/alter_table.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/binary.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/cast.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/ctype_cp1251.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/ctype_many.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/federated.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/func_in.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/ndb_condition_pushdown.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/ndb_types.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/sp.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/system_mysql_db.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. mysql-test/r/type_blob.result: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. scripts/mysql_create_system_tables.sh: Adding true BINARY/VARBINARY: fixing "password" type, not to be 0x00-padding. scripts/mysql_fix_privilege_tables.sql: Adding true BINARY/VARBINARY: fixing "password" type, not to be 0x00-padding.
		
			
				
	
	
		
			144 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			144 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
drop table if exists t1,t2;
 | 
						|
create table t1 (name char(20) not null, primary key (name));
 | 
						|
create table t2 (name char(20) binary not null, primary key (name));
 | 
						|
insert into t1 values ("å");
 | 
						|
insert into t1 values ("ä");
 | 
						|
insert into t1 values ("ö");
 | 
						|
insert into t2 select * from t1;
 | 
						|
select * from t1 order by name;
 | 
						|
name
 | 
						|
å
 | 
						|
ä
 | 
						|
ö
 | 
						|
select concat("*",name,"*") from t1 order by 1;
 | 
						|
concat("*",name,"*")
 | 
						|
*å*
 | 
						|
*ä*
 | 
						|
*ö*
 | 
						|
select min(name),min(concat("*",name,"*")),max(name),max(concat("*",name,"*")) from t1;
 | 
						|
min(name)	min(concat("*",name,"*"))	max(name)	max(concat("*",name,"*"))
 | 
						|
å	*å*	ö	*ö*
 | 
						|
select * from t2 order by name;
 | 
						|
name
 | 
						|
ä
 | 
						|
å
 | 
						|
ö
 | 
						|
select concat("*",name,"*") from t2 order by 1;
 | 
						|
concat("*",name,"*")
 | 
						|
*ä*
 | 
						|
*å*
 | 
						|
*ö*
 | 
						|
select min(name),min(concat("*",name,"*")),max(name),max(concat("*",name,"*")) from t2;
 | 
						|
min(name)	min(concat("*",name,"*"))	max(name)	max(concat("*",name,"*"))
 | 
						|
ä	*ä*	ö	*ö*
 | 
						|
select name from t1 where name between 'Ä' and 'Ö';
 | 
						|
name
 | 
						|
ä
 | 
						|
ö
 | 
						|
select name from t2 where name between 'ä' and 'ö';
 | 
						|
name
 | 
						|
ä
 | 
						|
å
 | 
						|
ö
 | 
						|
select name from t2 where name between 'Ä' and 'Ö';
 | 
						|
name
 | 
						|
drop table t1,t2;
 | 
						|
create table t1 (a char(10) not null, b char(10) binary not null,key (a), key(b));
 | 
						|
insert into t1 values ("hello ","hello "),("hello2 ","hello2 ");
 | 
						|
select concat("-",a,"-",b,"-") from t1 where a="hello";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
select concat("-",a,"-",b,"-") from t1 where a="hello ";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
select concat("-",a,"-",b,"-") from t1 ignore index (a) where a="hello ";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
select concat("-",a,"-",b,"-") from t1 where b="hello";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
select concat("-",a,"-",b,"-") from t1 where b="hello ";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
select concat("-",a,"-",b,"-") from t1 ignore index (b) where b="hello ";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
alter table t1 modify b tinytext not null, drop key b, add key (b(100));
 | 
						|
select concat("-",a,"-",b,"-") from t1;
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
-hello2-hello2-
 | 
						|
select concat("-",a,"-",b,"-") from t1 where b="hello ";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
select concat("-",a,"-",b,"-") from t1 ignore index (b) where b="hello ";
 | 
						|
concat("-",a,"-",b,"-")
 | 
						|
-hello-hello-
 | 
						|
drop table t1;
 | 
						|
create table t1 (b char(8));
 | 
						|
insert into t1 values(NULL);
 | 
						|
select b from t1 where binary b like '';
 | 
						|
b
 | 
						|
select b from t1 group by binary b like '';
 | 
						|
b
 | 
						|
NULL
 | 
						|
select b from t1 having binary b like '';
 | 
						|
b
 | 
						|
drop table t1;
 | 
						|
create table t1 (a char(3) binary, b binary(3));
 | 
						|
insert into t1 values ('aaa','bbb'),('AAA','BBB');
 | 
						|
select upper(a),upper(b) from t1;
 | 
						|
upper(a)	upper(b)
 | 
						|
AAA	bbb
 | 
						|
AAA	BBB
 | 
						|
select lower(a),lower(b) from t1;
 | 
						|
lower(a)	lower(b)
 | 
						|
aaa	bbb
 | 
						|
aaa	BBB
 | 
						|
select * from t1 where upper(a)='AAA';
 | 
						|
a	b
 | 
						|
aaa	bbb
 | 
						|
AAA	BBB
 | 
						|
select * from t1 where lower(a)='aaa';
 | 
						|
a	b
 | 
						|
aaa	bbb
 | 
						|
AAA	BBB
 | 
						|
select * from t1 where upper(b)='BBB';
 | 
						|
a	b
 | 
						|
AAA	BBB
 | 
						|
select * from t1 where lower(b)='bbb';
 | 
						|
a	b
 | 
						|
aaa	bbb
 | 
						|
select charset(a), charset(b), charset(binary 'ccc') from t1 limit 1;
 | 
						|
charset(a)	charset(b)	charset(binary 'ccc')
 | 
						|
latin1	binary	binary
 | 
						|
select collation(a), collation(b), collation(binary 'ccc') from t1 limit 1;
 | 
						|
collation(a)	collation(b)	collation(binary 'ccc')
 | 
						|
latin1_bin	binary	binary
 | 
						|
drop table t1;
 | 
						|
create table t1( firstname char(20), lastname char(20));
 | 
						|
insert into t1 values ("john","doe"),("John","Doe");
 | 
						|
select * from t1 where firstname='john' and firstname like binary 'john';
 | 
						|
firstname	lastname
 | 
						|
john	doe
 | 
						|
select * from t1 where firstname='john' and binary 'john' = firstname;
 | 
						|
firstname	lastname
 | 
						|
john	doe
 | 
						|
select * from t1 where firstname='john' and firstname = binary 'john';
 | 
						|
firstname	lastname
 | 
						|
john	doe
 | 
						|
select * from t1 where firstname='John' and firstname like binary 'john';
 | 
						|
firstname	lastname
 | 
						|
john	doe
 | 
						|
select * from t1 where firstname='john' and firstname like binary 'John';
 | 
						|
firstname	lastname
 | 
						|
John	Doe
 | 
						|
drop table t1;
 | 
						|
create table t1 (a binary);
 | 
						|
show create table t1;
 | 
						|
Table	Create Table
 | 
						|
t1	CREATE TABLE `t1` (
 | 
						|
  `a` binary(1) default NULL
 | 
						|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
 | 
						|
drop table t1;
 |