Loading mysql-test/r/information_schema.result +8 −0 Original line number Diff line number Diff line Loading @@ -971,3 +971,11 @@ Field Type Null Key Default Extra a int(11) NO b int(11) YES NULL drop table t1; CREATE TABLE t1 (a int); CREATE TABLE t2 (b int); SHOW TABLE STATUS FROM test WHERE name IN ( SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_TYPE='BASE TABLE'); Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment t1 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL t2 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL mysql-test/t/information_schema.test +15 −0 Original line number Diff line number Diff line Loading @@ -651,3 +651,18 @@ select column_name, column_default from columns use test; show columns from t1; drop table t1; # # Bug #12636: SHOW TABLE STATUS with where condition containing a subquery # over information schema # CREATE TABLE t1 (a int); CREATE TABLE t2 (b int); --replace_column 8 # 12 # 13 # SHOW TABLE STATUS FROM test WHERE name IN ( SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_TYPE='BASE TABLE'); DROP TABLE t1,t2 sql/sql_show.cc +1 −1 Original line number Diff line number Diff line Loading @@ -1705,7 +1705,7 @@ void get_index_field_values(LEX *lex, INDEX_FIELD_VALUES *index_field_values) case SQLCOM_SHOW_TABLES: case SQLCOM_SHOW_TABLE_STATUS: case SQLCOM_SHOW_TRIGGERS: index_field_values->db_value= lex->current_select->db; index_field_values->db_value= lex->select_lex.db; index_field_values->table_value= wild; break; default: Loading Loading
mysql-test/r/information_schema.result +8 −0 Original line number Diff line number Diff line Loading @@ -971,3 +971,11 @@ Field Type Null Key Default Extra a int(11) NO b int(11) YES NULL drop table t1; CREATE TABLE t1 (a int); CREATE TABLE t2 (b int); SHOW TABLE STATUS FROM test WHERE name IN ( SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_TYPE='BASE TABLE'); Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment t1 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL t2 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL
mysql-test/t/information_schema.test +15 −0 Original line number Diff line number Diff line Loading @@ -651,3 +651,18 @@ select column_name, column_default from columns use test; show columns from t1; drop table t1; # # Bug #12636: SHOW TABLE STATUS with where condition containing a subquery # over information schema # CREATE TABLE t1 (a int); CREATE TABLE t2 (b int); --replace_column 8 # 12 # 13 # SHOW TABLE STATUS FROM test WHERE name IN ( SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_TYPE='BASE TABLE'); DROP TABLE t1,t2
sql/sql_show.cc +1 −1 Original line number Diff line number Diff line Loading @@ -1705,7 +1705,7 @@ void get_index_field_values(LEX *lex, INDEX_FIELD_VALUES *index_field_values) case SQLCOM_SHOW_TABLES: case SQLCOM_SHOW_TABLE_STATUS: case SQLCOM_SHOW_TRIGGERS: index_field_values->db_value= lex->current_select->db; index_field_values->db_value= lex->select_lex.db; index_field_values->table_value= wild; break; default: Loading