码迷,mamicode.com
首页 > 数据库 > 详细

MySQL存储过程

时间:2019-08-02 00:40:10      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:declare   删除   符号   过程   div   语句   参数类型   color   类型   

1.delimiter修改语句结尾符号;   //例:delimiter $   为把;改为$

2.存储过程调用:

  call 名称();

3.存储过程示例:

delimiter $$
create procedure test()
begin
select * from user;end $$
delimiter ;
call test();

4.存储过程操作:

  (1)查看所有存储过程:show procedure status;

  (2)查看指定数据库中的存储过程:show procedure status where db=‘表名‘;

  (3)查看指定存储过程源代码:show create procedure 存储过程名;

  3)删除存储过程:drop procedure 存储过程名;

5.声明变量:declare;

  1.创建:declare 变量名  varchar(255) default ‘ ‘;

  2.修改:set 变量名=变量值;

delimiter $$
create procedure test()
begin
declare a int;
set a = 111;
select a;
end $$
delimiter ;
call test();

  3.使用:select into;例:select count(列名) into 变量名 from 表名;

delimiter $$
create procedure test(in id int, out num int)
begin
select id into num;
end $$
delimiter ;
call test(100,@num);
select @num;

6.存储过程参数:

  三种类型:create procedure 名称(模式,参数名,参数类型(大小));

  (1in:参数传入;在存储过程内可直接使用,无需再次声明;

delimiter $$
create procedure test(in id varchar(255))
begin
select id;
end $$
delimiter ;
call test(100);

  (2out:参数传出;

delimiter $$
create procedure test(in id varchar(255), out num int)
begin
select id;
set num = 100;
end $$
delimiter ;
call test(100,@num);
select @num;

  (3inout:传入后传出;

delimiter $$
create procedure test(inout num1 int, num2 int)
begin
set num1=num1+num2;
end $$
delimiter ;
set @a=20;
call test(@a, 10);
select @a;

 

 

MySQL存储过程

标签:declare   删除   符号   过程   div   语句   参数类型   color   类型   

原文地址:https://www.cnblogs.com/Tractors/p/11286041.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!