mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into neptunus.(none):/home/msvensson/mysql/mysql-4.1
This commit is contained in:
@@ -427,8 +427,8 @@ static void usage(void)
|
|||||||
can't fix the data file.\n\
|
can't fix the data file.\n\
|
||||||
--character-sets-dir=...\n\
|
--character-sets-dir=...\n\
|
||||||
Directory where character sets are.\n\
|
Directory where character sets are.\n\
|
||||||
--set-character-set=name\n\
|
--set-collation=name\n\
|
||||||
Change the character set used by the index.\n\
|
Change the collation used by the index.\n\
|
||||||
-q, --quick Faster repair by not modifying the data file.\n\
|
-q, --quick Faster repair by not modifying the data file.\n\
|
||||||
One can give a second '-q' to force myisamchk to\n\
|
One can give a second '-q' to force myisamchk to\n\
|
||||||
modify the original datafile in case of duplicate keys.\n\
|
modify the original datafile in case of duplicate keys.\n\
|
||||||
|
@@ -636,6 +636,26 @@ drop table t1;
|
|||||||
select charset(null), collation(null), coercibility(null);
|
select charset(null), collation(null), coercibility(null);
|
||||||
charset(null) collation(null) coercibility(null)
|
charset(null) collation(null) coercibility(null)
|
||||||
binary binary 5
|
binary binary 5
|
||||||
|
CREATE TABLE t1 (a int, b int);
|
||||||
|
CREATE TABLE t2 (a int, b int);
|
||||||
|
INSERT INTO t1 VALUES (1,1),(2,2);
|
||||||
|
INSERT INTO t2 VALUES (2,2),(3,3);
|
||||||
|
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||||
|
where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||||
|
a b a b
|
||||||
|
1 1 NULL NULL
|
||||||
|
2 2 2 2
|
||||||
|
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||||
|
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||||
|
a b a b
|
||||||
|
1 1 NULL NULL
|
||||||
|
2 2 2 2
|
||||||
|
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||||
|
where coercibility(t2.a) = 2 order by t1.a,t2.a;
|
||||||
|
a b a b
|
||||||
|
1 1 NULL NULL
|
||||||
|
2 2 2 2
|
||||||
|
DROP TABLE t1, t2;
|
||||||
select SUBSTR('abcdefg',3,2);
|
select SUBSTR('abcdefg',3,2);
|
||||||
SUBSTR('abcdefg',3,2)
|
SUBSTR('abcdefg',3,2)
|
||||||
cd
|
cd
|
||||||
|
@@ -376,6 +376,20 @@ insert into t1 values (null);
|
|||||||
select charset(a), collation(a), coercibility(a) from t1;
|
select charset(a), collation(a), coercibility(a) from t1;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
select charset(null), collation(null), coercibility(null);
|
select charset(null), collation(null), coercibility(null);
|
||||||
|
#
|
||||||
|
# Make sure OUTER JOIN is not replaced with a regular joun
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (a int, b int);
|
||||||
|
CREATE TABLE t2 (a int, b int);
|
||||||
|
INSERT INTO t1 VALUES (1,1),(2,2);
|
||||||
|
INSERT INTO t2 VALUES (2,2),(3,3);
|
||||||
|
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||||
|
where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||||
|
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||||
|
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
|
||||||
|
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
|
||||||
|
where coercibility(t2.a) = 2 order by t1.a,t2.a;
|
||||||
|
DROP TABLE t1, t2;
|
||||||
|
|
||||||
#
|
#
|
||||||
# test for SUBSTR
|
# test for SUBSTR
|
||||||
|
@@ -616,7 +616,8 @@ public:
|
|||||||
Item_func_coercibility(Item *a) :Item_int_func(a) {}
|
Item_func_coercibility(Item *a) :Item_int_func(a) {}
|
||||||
longlong val_int();
|
longlong val_int();
|
||||||
const char *func_name() const { return "coercibility"; }
|
const char *func_name() const { return "coercibility"; }
|
||||||
void fix_length_and_dec() { max_length=10; }
|
void fix_length_and_dec() { max_length=10; maybe_null= 0; }
|
||||||
|
table_map not_null_tables() const { return 0; }
|
||||||
};
|
};
|
||||||
|
|
||||||
class Item_func_locate :public Item_int_func
|
class Item_func_locate :public Item_int_func
|
||||||
|
@@ -641,7 +641,9 @@ public:
|
|||||||
{
|
{
|
||||||
collation.set(system_charset_info);
|
collation.set(system_charset_info);
|
||||||
max_length= 64 * collation.collation->mbmaxlen; // should be enough
|
max_length= 64 * collation.collation->mbmaxlen; // should be enough
|
||||||
|
maybe_null= 0;
|
||||||
};
|
};
|
||||||
|
table_map not_null_tables() const { return 0; }
|
||||||
};
|
};
|
||||||
|
|
||||||
class Item_func_collation :public Item_str_func
|
class Item_func_collation :public Item_str_func
|
||||||
@@ -654,7 +656,9 @@ public:
|
|||||||
{
|
{
|
||||||
collation.set(system_charset_info);
|
collation.set(system_charset_info);
|
||||||
max_length= 64 * collation.collation->mbmaxlen; // should be enough
|
max_length= 64 * collation.collation->mbmaxlen; // should be enough
|
||||||
|
maybe_null= 0;
|
||||||
};
|
};
|
||||||
|
table_map not_null_tables() const { return 0; }
|
||||||
};
|
};
|
||||||
|
|
||||||
class Item_func_crc32 :public Item_int_func
|
class Item_func_crc32 :public Item_int_func
|
||||||
|
Reference in New Issue
Block a user