一.创建存储过程

  1.基本语法:

  create procedure sp_name()

  begin

  .........

  end

  2.参数传递

  二.调用存储过程

  1.基本语法:call sp_name()

  注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递

  三.删除存储过程

  1.基本语法:

  drop procedure sp_name//

  2.注意事项

  (1)不能在一个存储过程中删除另一个存储过程,只能调用另一个存储过程

  四.区块,条件,循环

  1.区块定义,常用

  begin

  ......

  end;

  也可以给区块起别名,如:

  lable:begin

  ...........

  end lable;

  可以用leave lable;跳出区块,执行区块以后的代码

  2.条件语句

​以下为引用的内容:
if 条件 then
statement
else
statement
end if;​

  3.循环语句

  (1).while循环

​以下为引用的内容:
[label:] WHILE expression DO
  statements
  END WHILE [label] ;​

  (2).loop循环

​以下为引用的内容:
  [label:] LOOP
  statements
  END LOOP [label];​

  (3).repeat until循环

​以下为引用的内容:
  [label:] REPEAT
  statements
  UNTIL expression
  END REPEAT [label] ;​

  五.其他常用命令

  1.show procedure status

  显示数据库中所有存储的存储过程基本信息,包括所属数据库,存储过程名称,创建时间等

  2.show create procedure sp_name

  显示某一个存储过程的详细信息


存储过程需要开通的权限

grant alter routine  on *.*  to 'wanyue'@'%' identified by '9FiYBATZtCYfFtBH';

grant event  on *.*  to 'wanyue'@'%' identified by '9FiYBATZtCYfFtBH';

grant execute on *.*  to 'wanyue'@'%' identified by '9FiYBATZtCYfFtBH';