Loading mysql-test/r/view.result +6 −2 Original line number Diff line number Diff line Loading @@ -1146,11 +1146,11 @@ create view v2 as select * from v1; alter view v1 as select * from v2; ERROR 42S02: Table 'test.v1' doesn't exist alter view v1 as select * from v1; ERROR 42000: Not unique table/alias: 'v1' ERROR 42S02: Table 'test.v1' doesn't exist create or replace view v1 as select * from v2; ERROR 42S02: Table 'test.v1' doesn't exist create or replace view v1 as select * from v1; ERROR 42000: Not unique table/alias: 'v1' ERROR 42S02: Table 'test.v1' doesn't exist drop view v2,v1; drop table t1; create table t1 (a int); Loading Loading @@ -2186,3 +2186,7 @@ r_object_id users_names 120001a080000542 guser02 drop view v1, v2; drop table t1, t2; create table t1 (s1 int); create view abc as select * from t1 as abc; drop table t1; drop view abc; mysql-test/t/view.test +11 −2 Original line number Diff line number Diff line Loading @@ -1083,11 +1083,11 @@ create view v1 as select * from t1; create view v2 as select * from v1; -- error 1146 alter view v1 as select * from v2; -- error 1066 -- error 1146 alter view v1 as select * from v1; -- error 1146 create or replace view v1 as select * from v2; -- error 1066 -- error 1146 create or replace view v1 as select * from v1; drop view v2,v1; drop table t1; Loading Loading @@ -2059,3 +2059,12 @@ order by users_names; drop view v1, v2; drop table t1, t2; # # Bug #6808 - Views: CREATE VIEW v ... FROM t AS v fails # create table t1 (s1 int); create view abc as select * from t1 as abc; drop table t1; drop view abc; sql/sql_parse.cc +4 −1 Original line number Diff line number Diff line Loading @@ -6056,7 +6056,10 @@ TABLE_LIST *st_select_lex::add_table_to_list(THD *thd, /* check that used name is unique */ if (lock_type != TL_IGNORE) { for (TABLE_LIST *tables=(TABLE_LIST*) table_list.first ; TABLE_LIST *first_table= (TABLE_LIST*) table_list.first; if (lex->sql_command == SQLCOM_CREATE_VIEW) first_table= first_table ? first_table->next_local : NULL; for (TABLE_LIST *tables= first_table ; tables ; tables=tables->next_local) { Loading Loading
mysql-test/r/view.result +6 −2 Original line number Diff line number Diff line Loading @@ -1146,11 +1146,11 @@ create view v2 as select * from v1; alter view v1 as select * from v2; ERROR 42S02: Table 'test.v1' doesn't exist alter view v1 as select * from v1; ERROR 42000: Not unique table/alias: 'v1' ERROR 42S02: Table 'test.v1' doesn't exist create or replace view v1 as select * from v2; ERROR 42S02: Table 'test.v1' doesn't exist create or replace view v1 as select * from v1; ERROR 42000: Not unique table/alias: 'v1' ERROR 42S02: Table 'test.v1' doesn't exist drop view v2,v1; drop table t1; create table t1 (a int); Loading Loading @@ -2186,3 +2186,7 @@ r_object_id users_names 120001a080000542 guser02 drop view v1, v2; drop table t1, t2; create table t1 (s1 int); create view abc as select * from t1 as abc; drop table t1; drop view abc;
mysql-test/t/view.test +11 −2 Original line number Diff line number Diff line Loading @@ -1083,11 +1083,11 @@ create view v1 as select * from t1; create view v2 as select * from v1; -- error 1146 alter view v1 as select * from v2; -- error 1066 -- error 1146 alter view v1 as select * from v1; -- error 1146 create or replace view v1 as select * from v2; -- error 1066 -- error 1146 create or replace view v1 as select * from v1; drop view v2,v1; drop table t1; Loading Loading @@ -2059,3 +2059,12 @@ order by users_names; drop view v1, v2; drop table t1, t2; # # Bug #6808 - Views: CREATE VIEW v ... FROM t AS v fails # create table t1 (s1 int); create view abc as select * from t1 as abc; drop table t1; drop view abc;
sql/sql_parse.cc +4 −1 Original line number Diff line number Diff line Loading @@ -6056,7 +6056,10 @@ TABLE_LIST *st_select_lex::add_table_to_list(THD *thd, /* check that used name is unique */ if (lock_type != TL_IGNORE) { for (TABLE_LIST *tables=(TABLE_LIST*) table_list.first ; TABLE_LIST *first_table= (TABLE_LIST*) table_list.first; if (lex->sql_command == SQLCOM_CREATE_VIEW) first_table= first_table ? first_table->next_local : NULL; for (TABLE_LIST *tables= first_table ; tables ; tables=tables->next_local) { Loading