Commit b78129c8 authored by unknown's avatar unknown

fixed do with subselects


mysql-test/r/subselect.result:
  test of DO with subselects
mysql-test/t/subselect.test:
  test of DO with subselects
parent fe0aa532
......@@ -841,4 +841,13 @@ ROW(1, 1, 'a') IN (select b,a,c from t where c='b' or c='a')
1
select ROW(1, 1, 'a') IN (select b,a,c from t limit 2);
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
drop table if exists t;
drop table t;
create table t (a int);
insert into t values (1);
do @a:=(SELECT a from t);
select @a;
@a
1
drop table t;
do (SELECT a from t);
Table 'test.t' doesn't exist
......@@ -462,4 +462,12 @@ select ROW(1, 2, 'a') IN (select a,b,c from t where c='b' or c='a');
select ROW(1, 1, 'a') IN (select b,a,c from t where c='b' or c='a');
-- error 1235
select ROW(1, 1, 'a') IN (select b,a,c from t limit 2);
drop table if exists t;
drop table t;
create table t (a int);
insert into t values (1);
do @a:=(SELECT a from t);
select @a;
drop table t;
-- error 1146
do (SELECT a from t);
......@@ -1598,7 +1598,14 @@ mysql_execute_command(THD *thd)
break;
}
case SQLCOM_DO:
res=mysql_do(thd, *lex->insert_list);
if (tables && ((res= check_table_access(thd, SELECT_ACL, tables)) ||
(res= open_and_lock_tables(thd,tables))))
break;
fix_tables_pointers(lex->all_selects_list);
res= mysql_do(thd, *lex->insert_list);
if (thd->net.report_error)
res= -1;
break;
case SQLCOM_EMPTY_QUERY:
......
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