Commit 25fb012d authored by unknown's avatar unknown

Fix for BUG#13067 "JOIN ... USING is case sensitive".


mysql-test/r/select.result:
  Test for BUG#13067
mysql-test/t/select.test:
  Test for BUG#13067
sql/sql_base.cc:
  Correctly compare field names with respect to case sensitivity.
parent 6b52ad9a
...@@ -2912,3 +2912,13 @@ ERROR 23000: Column 'id' in from clause is ambiguous ...@@ -2912,3 +2912,13 @@ ERROR 23000: Column 'id' in from clause is ambiguous
SELECT id,t3.id FROM (t1 JOIN t2 ON (t2.id=t1.id)) LEFT JOIN t3 USING (id); SELECT id,t3.id FROM (t1 JOIN t2 ON (t2.id=t1.id)) LEFT JOIN t3 USING (id);
ERROR 23000: Column 'id' in from clause is ambiguous ERROR 23000: Column 'id' in from clause is ambiguous
drop table t1, t2, t3; drop table t1, t2, t3;
create table t1 (a int(10),b int(10));
create table t2 (a int(10),b int(10));
insert into t1 values (1,10),(2,20),(3,30);
insert into t2 values (1,10);
select * from t1 inner join t2 using (A);
a b b
1 10 10
select * from t1 inner join t2 using (a);
a b b
1 10 10
...@@ -2487,3 +2487,15 @@ SELECT id,t3.id FROM t1 JOIN t2 ON (t2.id=t1.id) LEFT JOIN t3 USING (id); ...@@ -2487,3 +2487,15 @@ SELECT id,t3.id FROM t1 JOIN t2 ON (t2.id=t1.id) LEFT JOIN t3 USING (id);
SELECT id,t3.id FROM (t1 JOIN t2 ON (t2.id=t1.id)) LEFT JOIN t3 USING (id); SELECT id,t3.id FROM (t1 JOIN t2 ON (t2.id=t1.id)) LEFT JOIN t3 USING (id);
drop table t1, t2, t3; drop table t1, t2, t3;
#
# Bug #13067 JOIN xxx USING is case sensitive
#
create table t1 (a int(10),b int(10));
create table t2 (a int(10),b int(10));
insert into t1 values (1,10),(2,20),(3,30);
insert into t2 values (1,10);
# both queries should produce the same result
select * from t1 inner join t2 using (A);
select * from t1 inner join t2 using (a);
...@@ -3414,7 +3414,7 @@ test_if_string_in_list(const char *find, List<String> *str_list) ...@@ -3414,7 +3414,7 @@ test_if_string_in_list(const char *find, List<String> *str_list)
{ {
if (find_length != curr_str->length()) if (find_length != curr_str->length())
continue; continue;
if (!strncmp(find, curr_str->ptr(), find_length)) if (!my_strcasecmp(system_charset_info, find, curr_str->ptr()))
return TRUE; return TRUE;
} }
return FALSE; return FALSE;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment