Fix for BUG#8921: Make SHOW CREATE VIEW ignore temporary tables.
This commit is contained in:
parent
a0c3aed75f
commit
ea347e5b06
@ -97,3 +97,29 @@ Variable_name Value
|
|||||||
Created_tmp_disk_tables 0
|
Created_tmp_disk_tables 0
|
||||||
Created_tmp_tables 2
|
Created_tmp_tables 2
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create temporary table t1 as select 'This is temp. table' A;
|
||||||
|
create view t1 as select 'This is view' A;
|
||||||
|
select * from t1;
|
||||||
|
A
|
||||||
|
This is temp. table
|
||||||
|
show create table t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TEMPORARY TABLE `t1` (
|
||||||
|
`A` varchar(19) NOT NULL default ''
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
|
show create view t1;
|
||||||
|
View Create View
|
||||||
|
t1 CREATE ALGORITHM=UNDEFINED VIEW `test`.`t1` AS select _latin1'This is view' AS `A`
|
||||||
|
drop view t1;
|
||||||
|
select * from t1;
|
||||||
|
A
|
||||||
|
This is temp. table
|
||||||
|
create view t1 as select 'This is view again' A;
|
||||||
|
select * from t1;
|
||||||
|
A
|
||||||
|
This is temp. table
|
||||||
|
drop table t1;
|
||||||
|
select * from t1;
|
||||||
|
A
|
||||||
|
This is view again
|
||||||
|
drop view t1;
|
||||||
|
@ -89,3 +89,18 @@ flush status;
|
|||||||
select * from t1 group by d;
|
select * from t1 group by d;
|
||||||
show status like "created_tmp%tables";
|
show status like "created_tmp%tables";
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
# Fix for BUG#8921: Check that temporary table is ingored by view commands.
|
||||||
|
create temporary table t1 as select 'This is temp. table' A;
|
||||||
|
create view t1 as select 'This is view' A;
|
||||||
|
select * from t1;
|
||||||
|
show create table t1;
|
||||||
|
show create view t1;
|
||||||
|
drop view t1;
|
||||||
|
select * from t1;
|
||||||
|
create view t1 as select 'This is view again' A;
|
||||||
|
select * from t1;
|
||||||
|
drop table t1;
|
||||||
|
select * from t1;
|
||||||
|
drop view t1;
|
||||||
|
|
||||||
|
@ -3010,6 +3010,10 @@ unsent_create_error:
|
|||||||
goto error;
|
goto error;
|
||||||
#else
|
#else
|
||||||
{
|
{
|
||||||
|
/* Ignore temporary tables if this is "SHOW CREATE VIEW" */
|
||||||
|
if (lex->only_view)
|
||||||
|
first_table->skip_temporary= 1;
|
||||||
|
|
||||||
if (check_db_used(thd, all_tables) ||
|
if (check_db_used(thd, all_tables) ||
|
||||||
check_access(thd, SELECT_ACL | EXTRA_ACL, first_table->db,
|
check_access(thd, SELECT_ACL | EXTRA_ACL, first_table->db,
|
||||||
&first_table->grant.privilege, 0, 0))
|
&first_table->grant.privilege, 0, 0))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user