MySQL存储过程使用

1.简介      

   SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。

   一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的。数据库中的存储过程可以看做是对编程中面向对象方法的模拟。它允许控制数据的访问方式。

2.创建存储过程

  create PROCEDURE 过程名(参数)

  begin

    语句块

  end

3.调用存储过程

  call 过程名(参数)

4.修改存储过程

  alter PROCEDURE

5.删除存储过程

  DROP PROCEDURE 过程名

6.问题解决

1)传入参数作为搜索条件

  create PROCEDURE test_pro(in l_id int)

  begin

    select * from table_name where id = l_id;

  end

  传入参数命名和搜索条件不能相同

2)搜索结果赋值到变量

  create PROCEDURE test_pro(in l_id int)

  begin

    declare l_name varchar(255);

    set l_name = (select name from table_name where id = l_id);

  end

原文地址:https://www.cnblogs.com/tanliyu/p/5916335.html