Loading mysql-test/r/ps.result +28 −0 Original line number Diff line number Diff line Loading @@ -542,3 +542,31 @@ execute my_stmt; COUNT(*) 37 deallocate prepare my_stmt; drop procedure if exists p1| drop table if exists t1| create table t1 (id int)| insert into t1 values(1)| create procedure p1(a int, b int) begin declare c int; select max(id)+1 into c from t1; insert into t1 select a+b; insert into t1 select a-b; insert into t1 select a-c; end| set @a= 3, @b= 4| prepare stmt from "call p1(?, ?)"| execute stmt using @a, @b| execute stmt using @a, @b| select * from t1| id 1 7 -1 1 7 -1 -5 deallocate prepare stmt| drop procedure p1| drop table t1| mysql-test/t/ps.test +26 −0 Original line number Diff line number Diff line Loading @@ -561,3 +561,29 @@ while ($exec_loop_count) dec $exec_loop_count; } deallocate prepare my_stmt; # Test CALL in prepared mode delimiter |; --disable_warnings drop procedure if exists p1| drop table if exists t1| --enable_warnings create table t1 (id int)| insert into t1 values(1)| create procedure p1(a int, b int) begin declare c int; select max(id)+1 into c from t1; insert into t1 select a+b; insert into t1 select a-b; insert into t1 select a-c; end| set @a= 3, @b= 4| prepare stmt from "call p1(?, ?)"| execute stmt using @a, @b| execute stmt using @a, @b| select * from t1| deallocate prepare stmt| drop procedure p1| drop table t1| delimiter ;| sql/sql_prepare.cc +1 −0 Original line number Diff line number Diff line Loading @@ -1654,6 +1654,7 @@ static int check_prepared_statement(Prepared_statement *stmt, case SQLCOM_DROP_INDEX: case SQLCOM_ROLLBACK: case SQLCOM_TRUNCATE: case SQLCOM_CALL: break; default: Loading Loading
mysql-test/r/ps.result +28 −0 Original line number Diff line number Diff line Loading @@ -542,3 +542,31 @@ execute my_stmt; COUNT(*) 37 deallocate prepare my_stmt; drop procedure if exists p1| drop table if exists t1| create table t1 (id int)| insert into t1 values(1)| create procedure p1(a int, b int) begin declare c int; select max(id)+1 into c from t1; insert into t1 select a+b; insert into t1 select a-b; insert into t1 select a-c; end| set @a= 3, @b= 4| prepare stmt from "call p1(?, ?)"| execute stmt using @a, @b| execute stmt using @a, @b| select * from t1| id 1 7 -1 1 7 -1 -5 deallocate prepare stmt| drop procedure p1| drop table t1|
mysql-test/t/ps.test +26 −0 Original line number Diff line number Diff line Loading @@ -561,3 +561,29 @@ while ($exec_loop_count) dec $exec_loop_count; } deallocate prepare my_stmt; # Test CALL in prepared mode delimiter |; --disable_warnings drop procedure if exists p1| drop table if exists t1| --enable_warnings create table t1 (id int)| insert into t1 values(1)| create procedure p1(a int, b int) begin declare c int; select max(id)+1 into c from t1; insert into t1 select a+b; insert into t1 select a-b; insert into t1 select a-c; end| set @a= 3, @b= 4| prepare stmt from "call p1(?, ?)"| execute stmt using @a, @b| execute stmt using @a, @b| select * from t1| deallocate prepare stmt| drop procedure p1| drop table t1| delimiter ;|
sql/sql_prepare.cc +1 −0 Original line number Diff line number Diff line Loading @@ -1654,6 +1654,7 @@ static int check_prepared_statement(Prepared_statement *stmt, case SQLCOM_DROP_INDEX: case SQLCOM_ROLLBACK: case SQLCOM_TRUNCATE: case SQLCOM_CALL: break; default: Loading