Loading mysql-test/r/trigger.result +5 −0 Original line number Diff line number Diff line Loading @@ -785,3 +785,8 @@ create trigger test.t1_bi before insert on t1 for each row set @a:=0; ERROR 3D000: No database selected drop trigger t1_bi; ERROR 3D000: No database selected create table t1 (i int); create trigger t1_bi before insert on t1 for each row return 0; ERROR 42000: RETURN is only allowed in a FUNCTION insert into t1 values (1); drop table t1; mysql-test/t/trigger.test +9 −0 Original line number Diff line number Diff line Loading @@ -958,3 +958,12 @@ create trigger test.t1_bi before insert on t1 for each row set @a:=0; --error ER_NO_DB_ERROR drop trigger t1_bi; connection default; # Test for bug #16829 "Firing trigger with RETURN crashes the server" # RETURN is not supposed to be used anywhere except functions, so error # should be returned when one attempts to create trigger with RETURN. create table t1 (i int); --error ER_SP_BADRETURN create trigger t1_bi before insert on t1 for each row return 0; insert into t1 values (1); drop table t1; sql/sql_yacc.yy +1 −1 Original line number Diff line number Diff line Loading @@ -1981,7 +1981,7 @@ sp_proc_stmt: LEX *lex= Lex; sp_head *sp= lex->sphead; if (sp->m_type == TYPE_ENUM_PROCEDURE) if (sp->m_type != TYPE_ENUM_FUNCTION) { my_message(ER_SP_BADRETURN, ER(ER_SP_BADRETURN), MYF(0)); YYABORT; Loading Loading
mysql-test/r/trigger.result +5 −0 Original line number Diff line number Diff line Loading @@ -785,3 +785,8 @@ create trigger test.t1_bi before insert on t1 for each row set @a:=0; ERROR 3D000: No database selected drop trigger t1_bi; ERROR 3D000: No database selected create table t1 (i int); create trigger t1_bi before insert on t1 for each row return 0; ERROR 42000: RETURN is only allowed in a FUNCTION insert into t1 values (1); drop table t1;
mysql-test/t/trigger.test +9 −0 Original line number Diff line number Diff line Loading @@ -958,3 +958,12 @@ create trigger test.t1_bi before insert on t1 for each row set @a:=0; --error ER_NO_DB_ERROR drop trigger t1_bi; connection default; # Test for bug #16829 "Firing trigger with RETURN crashes the server" # RETURN is not supposed to be used anywhere except functions, so error # should be returned when one attempts to create trigger with RETURN. create table t1 (i int); --error ER_SP_BADRETURN create trigger t1_bi before insert on t1 for each row return 0; insert into t1 values (1); drop table t1;
sql/sql_yacc.yy +1 −1 Original line number Diff line number Diff line Loading @@ -1981,7 +1981,7 @@ sp_proc_stmt: LEX *lex= Lex; sp_head *sp= lex->sphead; if (sp->m_type == TYPE_ENUM_PROCEDURE) if (sp->m_type != TYPE_ENUM_FUNCTION) { my_message(ER_SP_BADRETURN, ER(ER_SP_BADRETURN), MYF(0)); YYABORT; Loading