在这个MySQL例子中,我们创建了一个IN和一个OUT参数的存储过程 usp_GetEmployeeName。当调用这个存储过程时,你需要传递2个参数:id和name,一个作为输入参数id,另外一个作为输出参数返回结果。
01 | mysql> DELIMITER // |
02 | mysql> create procedure usp_GetEmployeeName( IN id INT , OUT name VARCHAR (20)) |
03 | -> begin |
04 | -> select emp_name into name from employee where emp_id = id; |
05 | -> end // |
06 | Query OK, 0 rows affected (0.52 sec) |
07 |
08 | mysql> DELIMITER ; |
09 |
10 | mysql> call usp_GetEmployeeName(103, @ name ); |
11 | Query OK, 1 row affected (0.05 sec) |
1 | mysql> select @ name ; |
2 | + -------+ |
3 | | @ name | |
4 | + -------+ |
5 | | Jack | |
6 | + -------+ |
7 | 1 row in set (0.00 sec) |
这就是怎样从命令行方式创建和调用存储过程的所有内容,在这个教程中,我们创建了带IN和OUT参数的存储过程多个例子。这是记住MySQL数据库存过语法的最好方式。