MySQL调用存储过程和函数
用call和你过程名以及一个括号,括号里面根据需要,加入参数,参数包括输入参数、输出参数、输入输出参数。具体的调用方法可以参看上面的例子。
1. 调用存储过程
存储过程是通过 CALL 语向进行调用的,语法如下:
CALL sp_name ( [ parameter [ , ... ] ] )
CALL 语句调用一个先前用 CREATE PROCEDURE 创建的存储过程,其中 sp_name 为存储过程的参数。
【例】 定义名为 Countproc1 的存储过程,然后调用这个存储过程。
定义存储过程的代码如下:
mysql> DELIMITER //
mysql> CREATE PROCEDURE CountProc1 (IN sid INT, OUT num INT )
-> BEGIN
-> SELECT COUNT(*) INTO num FROM fruits WHERE s_id = sid;
-> END //
Query OK, 0 rows affected (0.42 sec)
mysql> DELIMITER ;
【注】COUNT(*) 函数返回在给定的选择中被选的行数。
调用存储过程的代码如下:
mysql> CALL CountProc1 ( 101 , @num );
Query OK, 1 row affected (0.39 sec)
查看返回结果:
mysql> SELECT @num;
+------+
| @n