1 创建存储过程和函数
创建存储过程和函数的create语法规范如下:
CREATE
[DEFINER = { user | CURRENT_USER }] ##很多时候不需要特别声明
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
CREATE
[DEFINER = { user | CURRENT_USER }]
FUNCTION sp_name ([func_parameter[,...]]) ##输入参数
RETURNS type ## 声明返回值
[characteristic ...] routine_body
proc_parameter:
[ IN | OUT | INOUT ] param_name type ##声明输入输出参数
func_parameter:
param_name type ##输入参数,由于其输出参与已经在return中声明,不需要再指定
type:
Any valid MySQL data type
characteristic:
COMMENT 'string'
| LANGUAGE SQL
| [NOT] DETERMINISTIC ##默认为NOT DTERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
routine_body:
Valid SQL routine statement