Loading mysql-test/r/sp-error.result +2 −2 Original line number Diff line number Diff line Loading @@ -247,7 +247,7 @@ end| ERROR 42000: Duplicate cursor: c create procedure u() use sptmp| ERROR 42000: USE is not allowed in a stored procedure ERROR 0A000: USE is not allowed in stored procedures create procedure p() begin declare c cursor for select * from t1; Loading Loading @@ -616,7 +616,7 @@ begin flush tables; return 5; end| ERROR 0A000: FLUSH is not allowed in stored procedures ERROR 0A000: FLUSH is not allowed in stored function or trigger create procedure bug9529_90123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123() begin end| Loading mysql-test/r/trigger.result +16 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ drop table if exists t1, t2, t3; drop view if exists v1; drop database if exists mysqltest; drop function if exists f1; drop procedure if exists p1; create table t1 (i int); create trigger trg before insert on t1 for each row set @a:=1; set @a:=0; Loading Loading @@ -635,3 +636,18 @@ show triggers; Trigger Event Table Statement Timing Created sql_mode t1_bi INSERT t1 set new.a = '2004-01-00' BEFORE # drop table t1; create table t1 (id int); create trigger t1_ai after insert on t1 for each row flush tables; ERROR 0A000: FLUSH is not allowed in stored function or trigger create trigger t1_ai after insert on t1 for each row flush privileges; ERROR 0A000: FLUSH is not allowed in stored function or trigger create procedure p1() flush tables; create trigger t1_ai after insert on t1 for each row call p1(); insert into t1 values (0); ERROR 0A000: FLUSH is not allowed in stored function or trigger drop procedure p1; create procedure p1() flush privileges; insert into t1 values (0); ERROR 0A000: FLUSH is not allowed in stored function or trigger drop procedure p1; drop table t1; mysql-test/t/sp-error.test +2 −2 Original line number Diff line number Diff line Loading @@ -334,7 +334,7 @@ begin end| # USE is not allowed --error 1336 --error ER_SP_BADSTATEMENT create procedure u() use sptmp| Loading Loading @@ -885,7 +885,7 @@ create procedure bug10537() --disable_warnings drop function if exists bug8409| --enable_warnings --error ER_SP_BADSTATEMENT --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG create function bug8409() returns int begin Loading mysql-test/t/trigger.test +20 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,7 @@ drop table if exists t1, t2, t3; drop view if exists v1; drop database if exists mysqltest; drop function if exists f1; drop procedure if exists p1; --enable_warnings create table t1 (i int); Loading Loading @@ -642,3 +643,22 @@ show create table t1; --replace_column 6 # show triggers; drop table t1; # Test for bug #12280 "Triggers: crash if flush tables" # FLUSH TABLES and FLUSH PRIVILEGES should be disallowed inside # of functions and triggers. create table t1 (id int); --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG create trigger t1_ai after insert on t1 for each row flush tables; --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG create trigger t1_ai after insert on t1 for each row flush privileges; create procedure p1() flush tables; create trigger t1_ai after insert on t1 for each row call p1(); --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG insert into t1 values (0); drop procedure p1; create procedure p1() flush privileges; --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG insert into t1 values (0); drop procedure p1; drop table t1; sql/share/errmsg.txt +2 −2 Original line number Diff line number Diff line Loading @@ -5137,8 +5137,8 @@ ER_SP_CANT_ALTER eng "Failed to ALTER %s %s" ER_SP_SUBSELECT_NYI 0A000 eng "Subselect value not supported" ER_SP_NO_USE 42000 eng "USE is not allowed in a stored procedure" ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG 0A000 eng "%s is not allowed in stored function or trigger" ER_SP_VARCOND_AFTER_CURSHNDLR 42000 eng "Variable or condition declaration after cursor or handler declaration" ER_SP_CURSOR_AFTER_HANDLER 42000 Loading Loading
mysql-test/r/sp-error.result +2 −2 Original line number Diff line number Diff line Loading @@ -247,7 +247,7 @@ end| ERROR 42000: Duplicate cursor: c create procedure u() use sptmp| ERROR 42000: USE is not allowed in a stored procedure ERROR 0A000: USE is not allowed in stored procedures create procedure p() begin declare c cursor for select * from t1; Loading Loading @@ -616,7 +616,7 @@ begin flush tables; return 5; end| ERROR 0A000: FLUSH is not allowed in stored procedures ERROR 0A000: FLUSH is not allowed in stored function or trigger create procedure bug9529_90123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123() begin end| Loading
mysql-test/r/trigger.result +16 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ drop table if exists t1, t2, t3; drop view if exists v1; drop database if exists mysqltest; drop function if exists f1; drop procedure if exists p1; create table t1 (i int); create trigger trg before insert on t1 for each row set @a:=1; set @a:=0; Loading Loading @@ -635,3 +636,18 @@ show triggers; Trigger Event Table Statement Timing Created sql_mode t1_bi INSERT t1 set new.a = '2004-01-00' BEFORE # drop table t1; create table t1 (id int); create trigger t1_ai after insert on t1 for each row flush tables; ERROR 0A000: FLUSH is not allowed in stored function or trigger create trigger t1_ai after insert on t1 for each row flush privileges; ERROR 0A000: FLUSH is not allowed in stored function or trigger create procedure p1() flush tables; create trigger t1_ai after insert on t1 for each row call p1(); insert into t1 values (0); ERROR 0A000: FLUSH is not allowed in stored function or trigger drop procedure p1; create procedure p1() flush privileges; insert into t1 values (0); ERROR 0A000: FLUSH is not allowed in stored function or trigger drop procedure p1; drop table t1;
mysql-test/t/sp-error.test +2 −2 Original line number Diff line number Diff line Loading @@ -334,7 +334,7 @@ begin end| # USE is not allowed --error 1336 --error ER_SP_BADSTATEMENT create procedure u() use sptmp| Loading Loading @@ -885,7 +885,7 @@ create procedure bug10537() --disable_warnings drop function if exists bug8409| --enable_warnings --error ER_SP_BADSTATEMENT --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG create function bug8409() returns int begin Loading
mysql-test/t/trigger.test +20 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,7 @@ drop table if exists t1, t2, t3; drop view if exists v1; drop database if exists mysqltest; drop function if exists f1; drop procedure if exists p1; --enable_warnings create table t1 (i int); Loading Loading @@ -642,3 +643,22 @@ show create table t1; --replace_column 6 # show triggers; drop table t1; # Test for bug #12280 "Triggers: crash if flush tables" # FLUSH TABLES and FLUSH PRIVILEGES should be disallowed inside # of functions and triggers. create table t1 (id int); --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG create trigger t1_ai after insert on t1 for each row flush tables; --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG create trigger t1_ai after insert on t1 for each row flush privileges; create procedure p1() flush tables; create trigger t1_ai after insert on t1 for each row call p1(); --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG insert into t1 values (0); drop procedure p1; create procedure p1() flush privileges; --error ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG insert into t1 values (0); drop procedure p1; drop table t1;
sql/share/errmsg.txt +2 −2 Original line number Diff line number Diff line Loading @@ -5137,8 +5137,8 @@ ER_SP_CANT_ALTER eng "Failed to ALTER %s %s" ER_SP_SUBSELECT_NYI 0A000 eng "Subselect value not supported" ER_SP_NO_USE 42000 eng "USE is not allowed in a stored procedure" ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG 0A000 eng "%s is not allowed in stored function or trigger" ER_SP_VARCOND_AFTER_CURSHNDLR 42000 eng "Variable or condition declaration after cursor or handler declaration" ER_SP_CURSOR_AFTER_HANDLER 42000 Loading