Fix for bug 1176

parent b34c3934
...@@ -196,3 +196,11 @@ drop table t1,t2; ...@@ -196,3 +196,11 @@ drop table t1,t2;
SELECT a.x FROM (SELECT 1 AS x) AS a HAVING a.x = 1; SELECT a.x FROM (SELECT 1 AS x) AS a HAVING a.x = 1;
x x
1 1
create table a1 select 1 as a;
select 2 as a from (select * from a1) b;
ERROR 3D000: No Database Selected
use test;
select 2 as a from (select * from a1) b;
a
2
drop table a1;
...@@ -94,3 +94,16 @@ drop table t1,t2; ...@@ -94,3 +94,16 @@ drop table t1,t2;
# derived table reference # derived table reference
# #
SELECT a.x FROM (SELECT 1 AS x) AS a HAVING a.x = 1; SELECT a.x FROM (SELECT 1 AS x) AS a HAVING a.x = 1;
#
# Test for select if database is not selected.
#
# Connect without a database
create table a1 select 1 as a;
connect (con1,localhost,mysqltest_1,,*NO-ONE*,$MASTER_MYPORT,master.sock);
connection con1;
--error 1046
select 2 as a from (select * from a1) b;
use test;
select 2 as a from (select * from a1) b;
drop table a1;
...@@ -96,7 +96,7 @@ int mysql_derived(THD *thd, LEX *lex, SELECT_LEX_UNIT *unit, ...@@ -96,7 +96,7 @@ int mysql_derived(THD *thd, LEX *lex, SELECT_LEX_UNIT *unit,
else else
res= check_access(thd, SELECT_ACL, any_db); res= check_access(thd, SELECT_ACL, any_db);
if (res) if (res)
DBUG_RETURN(-1); DBUG_RETURN(1);
if (!(res=open_and_lock_tables(thd,tables))) if (!(res=open_and_lock_tables(thd,tables)))
{ {
......
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