CALL
On this page
Executes the specified stored procedure.
Syntax
CALL { procedure_name( [argument_list] )| database_name.procedure_name( [argument_list] ) };
Arguments
procedure_
The name of the stored procedure to execute.
argument_
A list of optional arguments to pass as input parameters to the stored procedure.
Remarks
-
Refer to the Permission Matrix for the required permission.
-
Stored procedures that return a scalar value can also be called on the right hand side of an assignment operation (within another stored procedure or an anonymous code block).
See CREATE PROCEDURE for more information.
Example
The following example executes a stored procedure that accepts a VARCHAR
as an input parameters.
CALL snapshot_db('db1');
Query OK, 0 rows affected (0.35 sec)
Calling from within another stored procedure and assigning the return value:
DELIMITER //CREATE PROCEDURE getNumRows(tableName text) RETURNS bigint ASDECLARE rowCount bigint;BEGINEXECUTE IMMEDIATE CONCAT('select count(*) from ', tableName)INTO rowCount;RETURN rowCount;END//CREATE TABLE spt(a int) //INSERT spt VALUES(1),(2) //DODECLARE n bigint;BEGINn = getNumRows("spt"); /* calls SP and assigns result to n */ECHO SELECT n;END//DELIMITER ;
Related Topics
The ECHO command is similar to CALL
but it outputs a set of rows as a result.
Last modified: June 9, 2023