Commit 2761c648 authored by unknown's avatar unknown

BUG#10713 mysqldump includes database in create view and referenced tables

 - Update test results
 - Updates after review


mysql-test/r/func_in.result:
  Update test results
mysql-test/r/lowercase_view.result:
  Update test results
mysql-test/r/mysqldump.result:
  Update test results
mysql-test/r/sql_mode.result:
  Update test results
mysql-test/r/temp_table.result:
  Update test results
mysql-test/r/view.result:
  Update test results
mysql-test/t/mysqldump.test:
  Update test results
sql/sql_show.cc:
  Updated after review
parent 9a96be05
...@@ -209,7 +209,7 @@ a ...@@ -209,7 +209,7 @@ a
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a NOT IN (45); CREATE VIEW v1 AS SELECT * FROM t1 WHERE a NOT IN (45);
SHOW CREATE VIEW v1; SHOW CREATE VIEW v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` <> 45) v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` <> 45)
SELECT * FROM v1; SELECT * FROM v1;
a a
44 44
......
...@@ -7,7 +7,7 @@ create table TaB (Field int); ...@@ -7,7 +7,7 @@ create table TaB (Field int);
create view ViE as select * from TAb; create view ViE as select * from TAb;
show create table VIe; show create table VIe;
View Create View View Create View
vie CREATE ALGORITHM=UNDEFINED VIEW `mysqltest`.`vie` AS select `mysqltest`.`tab`.`Field` AS `Field` from `mysqltest`.`tab` vie CREATE ALGORITHM=UNDEFINED VIEW `vie` AS select `tab`.`Field` AS `Field` from `tab`
drop database MySQLTest; drop database MySQLTest;
use test; use test;
create table t1Aa (col1 int); create table t1Aa (col1 int);
...@@ -119,7 +119,7 @@ create table t1Aa (col1 int); ...@@ -119,7 +119,7 @@ create table t1Aa (col1 int);
create view v1Aa as select col1 from t1Aa as AaA; create view v1Aa as select col1 from t1Aa as AaA;
show create view v1AA; show create view v1AA;
View Create View View Create View
v1aa CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1aa` AS select `aaa`.`col1` AS `col1` from `test`.`t1aa` `AaA` v1aa CREATE ALGORITHM=UNDEFINED VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `AaA`
drop view v1AA; drop view v1AA;
select Aaa.col1 from t1Aa as AaA; select Aaa.col1 from t1Aa as AaA;
col1 col1
...@@ -128,6 +128,6 @@ drop view v1AA; ...@@ -128,6 +128,6 @@ drop view v1AA;
create view v1Aa as select AaA.col1 from t1Aa as AaA; create view v1Aa as select AaA.col1 from t1Aa as AaA;
show create view v1AA; show create view v1AA;
View Create View View Create View
v1aa CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1aa` AS select `aaa`.`col1` AS `col1` from `test`.`t1aa` `AaA` v1aa CREATE ALGORITHM=UNDEFINED VIEW `v1aa` AS select `aaa`.`col1` AS `col1` from `t1aa` `AaA`
drop view v1AA; drop view v1AA;
drop table t1Aa; drop table t1Aa;
DROP TABLE IF EXISTS t1, `"t"1`, t1aa, t2, t2aa; DROP TABLE IF EXISTS t1, `"t"1`, t1aa, t2, t2aa;
drop database if exists mysqldump_test_db; drop database if exists mysqldump_test_db;
drop database if exists db1; drop database if exists db1;
drop database if exists db2;
drop view if exists v1, v2, v3; drop view if exists v1, v2, v3;
CREATE TABLE t1(a int); CREATE TABLE t1(a int);
INSERT INTO t1 VALUES (1), (2); INSERT INTO t1 VALUES (1), (2);
...@@ -1390,8 +1391,13 @@ INSERT INTO `t2` VALUES ('alfred'),('angie'),('bingo'),('waffle'),('lemon'); ...@@ -1390,8 +1391,13 @@ INSERT INTO `t2` VALUES ('alfred'),('angie'),('bingo'),('waffle'),('lemon');
UNLOCK TABLES; UNLOCK TABLES;
/*!40000 ALTER TABLE `t2` ENABLE KEYS */; /*!40000 ALTER TABLE `t2` ENABLE KEYS */;
DROP TABLE IF EXISTS `v2`; DROP TABLE IF EXISTS `v2`;
DROP VIEW IF EXISTS `v2`; /*!50001 DROP VIEW IF EXISTS `v2`*/;
CREATE ALGORITHM=UNDEFINED VIEW `db1`.`v2` AS select `db1`.`t2`.`a` AS `a` from `db1`.`t2` where (`db1`.`t2`.`a` like _latin1'a%') WITH CASCADED CHECK OPTION; /*!50001 CREATE TABLE `v2` (
`a` varchar(30) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1*/;
/*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/;
/*!50001 CREATE ALGORITHM=UNDEFINED VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where (`t2`.`a` like _latin1'a%') WITH CASCADED CHECK OPTION*/;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
...@@ -1404,6 +1410,33 @@ CREATE ALGORITHM=UNDEFINED VIEW `db1`.`v2` AS select `db1`.`t2`.`a` AS `a` from ...@@ -1404,6 +1410,33 @@ CREATE ALGORITHM=UNDEFINED VIEW `db1`.`v2` AS select `db1`.`t2`.`a` AS `a` from
drop table t2; drop table t2;
drop view v2; drop view v2;
drop database db1; drop database db1;
create database db2;
use db2;
create table t1 (a int);
create table t2 (a int, b varchar(10), primary key(a));
insert into t2 values (1, "on"), (2, "off"), (10, "pol"), (12, "meg");
insert into t1 values (289), (298), (234), (456), (789);
create view v1 as select * from t2;
create view v2 as select * from t1;
drop table t1, t2;
drop view v1, v2;
drop database db2;
create database db1;
use db1;
show tables;
Tables_in_db1
t1
t2
v1
v2
select * from t2 order by a;
a b
1 on
2 off
10 pol
12 meg
drop table t1, t2;
drop database db1;
CREATE DATABASE mysqldump_test_db; CREATE DATABASE mysqldump_test_db;
USE mysqldump_test_db; USE mysqldump_test_db;
CREATE TABLE t1 ( a INT ); CREATE TABLE t1 ( a INT );
...@@ -1598,7 +1631,7 @@ DROP TABLE IF EXISTS `v1`; ...@@ -1598,7 +1631,7 @@ DROP TABLE IF EXISTS `v1`;
) ENGINE=MyISAM DEFAULT CHARSET=latin1*/; ) ENGINE=MyISAM DEFAULT CHARSET=latin1*/;
/*!50001 DROP TABLE IF EXISTS `v1`*/; /*!50001 DROP TABLE IF EXISTS `v1`*/;
/*!50001 DROP VIEW IF EXISTS `v1`*/; /*!50001 DROP VIEW IF EXISTS `v1`*/;
/*!50001 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1`*/; /*!50001 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t1`.`a` AS `a` from `t1`*/;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
...@@ -1650,7 +1683,7 @@ DROP TABLE IF EXISTS `v2`; ...@@ -1650,7 +1683,7 @@ DROP TABLE IF EXISTS `v2`;
) ENGINE=MyISAM DEFAULT CHARSET=latin1*/; ) ENGINE=MyISAM DEFAULT CHARSET=latin1*/;
/*!50001 DROP TABLE IF EXISTS `v2`*/; /*!50001 DROP TABLE IF EXISTS `v2`*/;
/*!50001 DROP VIEW IF EXISTS `v2`*/; /*!50001 DROP VIEW IF EXISTS `v2`*/;
/*!50001 CREATE ALGORITHM=UNDEFINED VIEW `mysqldump_test_db`.`v2` AS select `mysqldump_test_db`.`t2`.`a` AS `a` from `mysqldump_test_db`.`t2` where (`mysqldump_test_db`.`t2`.`a` like _latin1'a%') WITH CASCADED CHECK OPTION*/; /*!50001 CREATE ALGORITHM=UNDEFINED VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where (`t2`.`a` like _latin1'a%') WITH CASCADED CHECK OPTION*/;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
...@@ -1714,7 +1747,7 @@ v2 VIEW ...@@ -1714,7 +1747,7 @@ v2 VIEW
v3 VIEW v3 VIEW
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `v3`.`a` AS `a`,`v3`.`b` AS `b`,`v3`.`c` AS `c` from `test`.`v3` where (`v3`.`b` in (1,2,3,4,5,6,7)) v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `v3`.`a` AS `a`,`v3`.`b` AS `b`,`v3`.`c` AS `c` from `v3` where (`v3`.`b` in (1,2,3,4,5,6,7))
select * from v1; select * from v1;
a b c a b c
1 2 one 1 2 one
......
...@@ -449,11 +449,11 @@ create table t2 (a int); ...@@ -449,11 +449,11 @@ create table t2 (a int);
create view v1 as select a from t1; create view v1 as select a from t1;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t1`.`a` AS `a` from `t1`
SET @@SQL_MODE='ANSI_QUOTES'; SET @@SQL_MODE='ANSI_QUOTES';
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW "test"."v1" AS select "test"."t1"."a" AS "a" from "test"."t1" v1 CREATE ALGORITHM=UNDEFINED VIEW "v1" AS select "t1"."a" AS "a" from "t1"
create view v2 as select a from t2 where a in (select a from v1); create view v2 as select a from t2 where a in (select a from v1);
drop view v2, v1; drop view v2, v1;
drop table t1, t2; drop table t1, t2;
......
...@@ -111,7 +111,7 @@ t1 CREATE TEMPORARY TABLE `t1` ( ...@@ -111,7 +111,7 @@ t1 CREATE TEMPORARY TABLE `t1` (
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
show create view t1; show create view t1;
View Create View View Create View
t1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`t1` AS select _latin1'This is view' AS `A` t1 CREATE ALGORITHM=UNDEFINED VIEW `t1` AS select _latin1'This is view' AS `A`
drop view t1; drop view t1;
select * from t1; select * from t1;
A A
......
...@@ -32,10 +32,10 @@ c ...@@ -32,10 +32,10 @@ c
11 11
show create table v1; show create table v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select (`test`.`t1`.`b` + 1) AS `c` from `test`.`t1` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1`
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select (`test`.`t1`.`b` + 1) AS `c` from `test`.`t1` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select (`t1`.`b` + 1) AS `c` from `t1`
show create view t1; show create view t1;
ERROR HY000: 'test.t1' is not VIEW ERROR HY000: 'test.t1' is not VIEW
drop table t1; drop table t1;
...@@ -55,7 +55,7 @@ Note 1003 select (`test`.`t1`.`b` + 1) AS `c` from `test`.`t1` ...@@ -55,7 +55,7 @@ Note 1003 select (`test`.`t1`.`b` + 1) AS `c` from `test`.`t1`
create algorithm=temptable view v2 (c) as select b+1 from t1; create algorithm=temptable view v2 (c) as select b+1 from t1;
show create view v2; show create view v2;
View Create View View Create View
v2 CREATE ALGORITHM=TEMPTABLE VIEW `test`.`v2` AS select (`test`.`t1`.`b` + 1) AS `c` from `test`.`t1` v2 CREATE ALGORITHM=TEMPTABLE VIEW `v2` AS select (`t1`.`b` + 1) AS `c` from `t1`
select c from v2; select c from v2;
c c
3 3
...@@ -550,7 +550,7 @@ create table t1 ("a*b" int); ...@@ -550,7 +550,7 @@ create table t1 ("a*b" int);
create view v1 as select "a*b" from t1; create view v1 as select "a*b" from t1;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE VIEW "test"."v1" AS select "test"."t1"."a*b" AS "a*b" from "test"."t1" v1 CREATE VIEW "v1" AS select "t1"."a*b" AS "a*b" from "t1"
drop view v1; drop view v1;
drop table t1; drop table t1;
set sql_mode=default; set sql_mode=default;
...@@ -657,7 +657,7 @@ drop table t1; ...@@ -657,7 +657,7 @@ drop table t1;
CREATE VIEW v1 (f1,f2,f3,f4) AS SELECT connection_id(), pi(), current_user(), version(); CREATE VIEW v1 (f1,f2,f3,f4) AS SELECT connection_id(), pi(), current_user(), version();
SHOW CREATE VIEW v1; SHOW CREATE VIEW v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select sql_no_cache connection_id() AS `f1`,pi() AS `f2`,current_user() AS `f3`,version() AS `f4` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select sql_no_cache connection_id() AS `f1`,pi() AS `f2`,current_user() AS `f3`,version() AS `f4`
drop view v1; drop view v1;
create table t1 (s1 int); create table t1 (s1 int);
create table t2 (s2 int); create table t2 (s2 int);
...@@ -691,13 +691,13 @@ create view v1 as select a from t1; ...@@ -691,13 +691,13 @@ create view v1 as select a from t1;
create view v2 as select a from t2 where a in (select a from v1); create view v2 as select a from t2 where a in (select a from v1);
show create view v2; show create view v2;
View Create View View Create View
v2 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v2` AS select `test`.`t2`.`a` AS `a` from `test`.`t2` where `a` in (select `v1`.`a` AS `a` from `test`.`v1`) v2 CREATE ALGORITHM=UNDEFINED VIEW `v2` AS select `t2`.`a` AS `a` from `t2` where `a` in (select `v1`.`a` AS `a` from `v1`)
drop view v2, v1; drop view v2, v1;
drop table t1, t2; drop table t1, t2;
CREATE VIEW `v 1` AS select 5 AS `5`; CREATE VIEW `v 1` AS select 5 AS `5`;
show create view `v 1`; show create view `v 1`;
View Create View View Create View
v 1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v 1` AS select 5 AS `5` v 1 CREATE ALGORITHM=UNDEFINED VIEW `v 1` AS select 5 AS `5`
drop view `v 1`; drop view `v 1`;
create database mysqltest; create database mysqltest;
create table mysqltest.t1 (a int, b int); create table mysqltest.t1 (a int, b int);
...@@ -765,14 +765,14 @@ a b ...@@ -765,14 +765,14 @@ a b
1 1 1 1
show create view v3; show create view v3;
View Create View View Create View
v3 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v3` AS select `v1`.`col1` AS `a`,`v2`.`col1` AS `b` from (`test`.`v1` join `test`.`v2`) where (`v1`.`col1` = `v2`.`col1`) v3 CREATE ALGORITHM=UNDEFINED VIEW `v3` AS select `v1`.`col1` AS `a`,`v2`.`col1` AS `b` from (`v1` join `v2`) where (`v1`.`col1` = `v2`.`col1`)
drop view v3, v2, v1; drop view v3, v2, v1;
drop table t2, t1; drop table t2, t1;
create function `f``1` () returns int return 5; create function `f``1` () returns int return 5;
create view v1 as select test.`f``1` (); create view v1 as select test.`f``1` ();
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select sql_no_cache `test`.`f``1`() AS `test.``f````1`` ()` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select sql_no_cache `test`.`f``1`() AS `test.``f````1`` ()`
select * from v1; select * from v1;
test.`f``1` () test.`f``1` ()
5 5
...@@ -789,10 +789,10 @@ create table t2 (col1 char collate latin1_german2_ci); ...@@ -789,10 +789,10 @@ create table t2 (col1 char collate latin1_german2_ci);
create view v2 as select col1 collate latin1_german1_ci from t2; create view v2 as select col1 collate latin1_german1_ci from t2;
show create view v2; show create view v2;
View Create View View Create View
v2 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v2` AS select (`test`.`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `test`.`t2` v2 CREATE ALGORITHM=UNDEFINED VIEW `v2` AS select (`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `t2`
show create view v2; show create view v2;
View Create View View Create View
v2 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v2` AS select (`test`.`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `test`.`t2` v2 CREATE ALGORITHM=UNDEFINED VIEW `v2` AS select (`t2`.`col1` collate latin1_german1_ci) AS `col1 collate latin1_german1_ci` from `t2`
drop view v2; drop view v2;
drop table t2; drop table t2;
create table t1 (a int); create table t1 (a int);
...@@ -819,7 +819,7 @@ drop table t1; ...@@ -819,7 +819,7 @@ drop table t1;
create view v1 as select 99999999999999999999999999999999999999999999999999999 as col1; create view v1 as select 99999999999999999999999999999999999999999999999999999 as col1;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select 99999999999999999999999999999999999999999999999999999 AS `col1` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select 99999999999999999999999999999999999999999999999999999 AS `col1`
drop view v1; drop view v1;
create table t (c char); create table t (c char);
create view v as select c from t; create view v as select c from t;
...@@ -840,7 +840,7 @@ drop table t1; ...@@ -840,7 +840,7 @@ drop table t1;
create view v1 as select cast(1 as char(3)); create view v1 as select cast(1 as char(3));
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select cast(1 as char(3) charset latin1) AS `cast(1 as char(3))` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select cast(1 as char(3) charset latin1) AS `cast(1 as char(3))`
select * from v1; select * from v1;
cast(1 as char(3)) cast(1 as char(3))
1 1
...@@ -1157,19 +1157,19 @@ create table t1 (a int); ...@@ -1157,19 +1157,19 @@ create table t1 (a int);
create view v1 as select * from t1; create view v1 as select * from t1;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t1`.`a` AS `a` from `t1`
alter algorithm=undefined view v1 as select * from t1 with check option; alter algorithm=undefined view v1 as select * from t1 with check option;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` WITH CASCADED CHECK OPTION v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t1`.`a` AS `a` from `t1` WITH CASCADED CHECK OPTION
alter algorithm=merge view v1 as select * from t1 with cascaded check option; alter algorithm=merge view v1 as select * from t1 with cascaded check option;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=MERGE VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` WITH CASCADED CHECK OPTION v1 CREATE ALGORITHM=MERGE VIEW `v1` AS select `t1`.`a` AS `a` from `t1` WITH CASCADED CHECK OPTION
alter algorithm=temptable view v1 as select * from t1; alter algorithm=temptable view v1 as select * from t1;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=TEMPTABLE VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` v1 CREATE ALGORITHM=TEMPTABLE VIEW `v1` AS select `t1`.`a` AS `a` from `t1`
drop view v1; drop view v1;
drop table t1; drop table t1;
create table t1 (s1 int); create table t1 (s1 int);
...@@ -1841,24 +1841,24 @@ create table t2 (b timestamp default now()); ...@@ -1841,24 +1841,24 @@ create table t2 (b timestamp default now());
create view v1 as select a,b,t1.a < now() from t1,t2 where t1.a < now(); create view v1 as select a,b,t1.a < now() from t1,t2 where t1.a < now();
SHOW CREATE VIEW v1; SHOW CREATE VIEW v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select sql_no_cache `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b`,(`test`.`t1`.`a` < now()) AS `t1.a < now()` from (`test`.`t1` join `test`.`t2`) where (`test`.`t1`.`a` < now()) v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select sql_no_cache `t1`.`a` AS `a`,`t2`.`b` AS `b`,(`t1`.`a` < now()) AS `t1.a < now()` from (`t1` join `t2`) where (`t1`.`a` < now())
drop view v1; drop view v1;
drop table t1, t2; drop table t1, t2;
CREATE TABLE t1 ( a varchar(50) ); CREATE TABLE t1 ( a varchar(50) );
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = CURRENT_USER(); CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = CURRENT_USER();
SHOW CREATE VIEW v1; SHOW CREATE VIEW v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select sql_no_cache `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` = current_user()) v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select sql_no_cache `t1`.`a` AS `a` from `t1` where (`t1`.`a` = current_user())
DROP VIEW v1; DROP VIEW v1;
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = VERSION(); CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = VERSION();
SHOW CREATE VIEW v1; SHOW CREATE VIEW v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` = version()) v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`t1`.`a` = version())
DROP VIEW v1; DROP VIEW v1;
CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = DATABASE(); CREATE VIEW v1 AS SELECT * FROM t1 WHERE a = DATABASE();
SHOW CREATE VIEW v1; SHOW CREATE VIEW v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select sql_no_cache `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` = database()) v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select sql_no_cache `t1`.`a` AS `a` from `t1` where (`t1`.`a` = database())
DROP VIEW v1; DROP VIEW v1;
DROP TABLE t1; DROP TABLE t1;
CREATE TABLE t1 (col1 time); CREATE TABLE t1 (col1 time);
...@@ -1949,7 +1949,7 @@ create table t1 (s1 int); ...@@ -1949,7 +1949,7 @@ create table t1 (s1 int);
create view v1 as select var_samp(s1) from t1; create view v1 as select var_samp(s1) from t1;
show create view v1; show create view v1;
View Create View View Create View
v1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`v1` AS select var_samp(`test`.`t1`.`s1`) AS `var_samp(s1)` from `test`.`t1` v1 CREATE ALGORITHM=UNDEFINED VIEW `v1` AS select var_samp(`t1`.`s1`) AS `var_samp(s1)` from `t1`
drop view v1; drop view v1;
drop table t1; drop table t1;
set sql_mode='strict_all_tables'; set sql_mode='strict_all_tables';
......
...@@ -576,7 +576,7 @@ drop database db1; ...@@ -576,7 +576,7 @@ drop database db1;
# Bug 10713 mysqldump includes database in create view and referenced tables # Bug 10713 mysqldump includes database in create view and referenced tables
# #
# create table and views in testdb2 # create table and views in db2
create database db2; create database db2;
use db2; use db2;
create table t1 (a int); create table t1 (a int);
...@@ -587,7 +587,6 @@ create view v1 as select * from t2; ...@@ -587,7 +587,6 @@ create view v1 as select * from t2;
create view v2 as select * from t1; create view v2 as select * from t1;
# dump tables and view from db2 # dump tables and view from db2
--exec $MYSQL_DUMP db2
--exec $MYSQL_DUMP db2 > var/tmp/bug10713.sql --exec $MYSQL_DUMP db2 > var/tmp/bug10713.sql
# drop the db, tables and views # drop the db, tables and views
...@@ -602,10 +601,9 @@ use db1; ...@@ -602,10 +601,9 @@ use db1;
# check that all tables and views could be created # check that all tables and views could be created
show tables; show tables;
#select * from t2 order by a; select * from t2 order by a;
#drop table t1, t2; drop table t1, t2;
#drop view t1, t2;
drop database db1; drop database db1;
# #
# Bug #9558 mysqldump --no-data db t1 t2 format still dumps data # Bug #9558 mysqldump --no-data db t1 t2 format still dumps data
......
...@@ -1050,12 +1050,12 @@ view_store_create_info(THD *thd, TABLE_LIST *table, String *buff) ...@@ -1050,12 +1050,12 @@ view_store_create_info(THD *thd, TABLE_LIST *table, String *buff)
- if user has db of this view as current db - if user has db of this view as current db
- if this view only references table inside it's own db - if this view only references table inside it's own db
*/ */
if(strcmp(thd->db, table->view_db.str)) if (!thd->db || strcmp(thd->db, table->view_db.str))
table->compact_view_format= FALSE; table->compact_view_format= FALSE;
else else
{ {
table->compact_view_format= TRUE;
TABLE_LIST *tbl; TABLE_LIST *tbl;
table->compact_view_format= TRUE;
for (tbl= thd->lex->query_tables; for (tbl= thd->lex->query_tables;
tbl; tbl;
tbl= tbl->next_global) tbl= tbl->next_global)
......
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