mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge magare.gmz:/home/kgeorge/mysql/autopush/B31562-5.0-opt
into magare.gmz:/home/kgeorge/mysql/work/B31562-5.1-opt sql/item.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_select.cc: Auto merged mysql-test/r/lowercase_view.result: merge bug 31562 5.0->5.1: changed explain format
This commit is contained in:
@ -119,7 +119,7 @@ create table t1Aa (col1 int);
|
||||
create view v1Aa as select col1 from t1Aa as AaA;
|
||||
show create view v1AA;
|
||||
View Create View character_set_client collation_connection
|
||||
v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `AaA` latin1 latin1_swedish_ci
|
||||
v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa` latin1 latin1_swedish_ci
|
||||
drop view v1AA;
|
||||
select Aaa.col1 from t1Aa as AaA;
|
||||
col1
|
||||
@ -128,6 +128,23 @@ drop view v1AA;
|
||||
create view v1Aa as select AaA.col1 from t1Aa as AaA;
|
||||
show create view v1AA;
|
||||
View Create View character_set_client collation_connection
|
||||
v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `AaA` latin1 latin1_swedish_ci
|
||||
v1aa CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `aaa` latin1 latin1_swedish_ci
|
||||
drop view v1AA;
|
||||
drop table t1Aa;
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
select X.a from t1 AS X group by X.b having (X.a = 1);
|
||||
a
|
||||
select X.a from t1 AS X group by X.b having (x.a = 1);
|
||||
a
|
||||
select X.a from t1 AS X group by X.b having (x.b = 1);
|
||||
a
|
||||
CREATE OR REPLACE VIEW v1 AS
|
||||
select X.a from t1 AS X group by X.b having (X.a = 1);
|
||||
SHOW CREATE VIEW v1;
|
||||
View Create View
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `x`.`a` AS `a` from `t1` `x` group by `x`.`b` having (`x`.`a` = 1)
|
||||
SELECT * FROM v1;
|
||||
a
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
End of 5.0 tests.
|
||||
|
@ -138,3 +138,26 @@ create view v1Aa as select AaA.col1 from t1Aa as AaA;
|
||||
show create view v1AA;
|
||||
drop view v1AA;
|
||||
drop table t1Aa;
|
||||
|
||||
|
||||
#
|
||||
# Bug #31562: HAVING and lower case
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
|
||||
select X.a from t1 AS X group by X.b having (X.a = 1);
|
||||
select X.a from t1 AS X group by X.b having (x.a = 1);
|
||||
select X.a from t1 AS X group by X.b having (x.b = 1);
|
||||
|
||||
CREATE OR REPLACE VIEW v1 AS
|
||||
select X.a from t1 AS X group by X.b having (X.a = 1);
|
||||
|
||||
SHOW CREATE VIEW v1;
|
||||
|
||||
SELECT * FROM v1;
|
||||
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo End of 5.0 tests.
|
||||
|
@ -3349,7 +3349,7 @@ static Item** find_field_in_group_list(Item *find_item, ORDER *group_list)
|
||||
if (cur_field->table_name && table_name)
|
||||
{
|
||||
/* If field_name is qualified by a table name. */
|
||||
if (strcmp(cur_field->table_name, table_name))
|
||||
if (my_strcasecmp(table_alias_charset, cur_field->table_name, table_name))
|
||||
/* Same field names, different tables. */
|
||||
return NULL;
|
||||
|
||||
|
@ -5318,7 +5318,8 @@ find_item_in_list(Item *find, List<Item> &items, uint *counter,
|
||||
if (item_field->field_name && item_field->table_name &&
|
||||
!my_strcasecmp(system_charset_info, item_field->field_name,
|
||||
field_name) &&
|
||||
!strcmp(item_field->table_name, table_name) &&
|
||||
!my_strcasecmp(table_alias_charset, item_field->table_name,
|
||||
table_name) &&
|
||||
(!db_name || (item_field->db_name &&
|
||||
!strcmp(item_field->db_name, db_name))))
|
||||
{
|
||||
|
@ -16226,8 +16226,21 @@ void TABLE_LIST::print(THD *thd, String *str)
|
||||
}
|
||||
if (my_strcasecmp(table_alias_charset, cmp_name, alias))
|
||||
{
|
||||
char t_alias_buff[MAX_ALIAS_NAME];
|
||||
const char *t_alias= alias;
|
||||
|
||||
str->append(' ');
|
||||
append_identifier(thd, str, alias, strlen(alias));
|
||||
if (lower_case_table_names== 1)
|
||||
{
|
||||
if (alias && alias[0])
|
||||
{
|
||||
strmov(t_alias_buff, alias);
|
||||
my_casedn_str(files_charset_info, t_alias_buff);
|
||||
t_alias= t_alias_buff;
|
||||
}
|
||||
}
|
||||
|
||||
append_identifier(thd, str, t_alias, strlen(t_alias));
|
||||
}
|
||||
|
||||
if (index_hints)
|
||||
|
Reference in New Issue
Block a user