【Mysql】mysql的存储过程

  1、什么是存储过程

(1)mysql 5.0版本开始支持存储过程

(2)简单的说,存储过程就是一组SQL语句集,功能强大,可以实现一些比较复杂的逻辑功能,类似于JAVA语言中的方法。

(3)存储过程就是数据库SQL语言层面的代码封装与重用。

2、存储过程的特性

(1)有输入、输出参数,可以声明变量,有if/else   ,  case,   while  等控制语句,通过编写存储过程,可以实现复杂的逻辑功能。

(2)函数的普遍特性:模块化、封装、代码复用

(3)速度快,只有首次执行需经过编译和优化步骤,后续被调用可以直接执行,省去以上步骤。

3、格式

delimiter      自定义结束符

create    procedure     储存名([in,  out,  inout]   参数名   数据类型...)

begin  

   sql语句

end   自定义结束符号

delimiter ;

注意:自定义结束符号一般用:$$或者\\

4、操作

创建数据库:my_procedure

创建学生表,并向表中插入数据:

表中的数据为:

创建存储过程:

调用存储过程:

5、Mysql操作---变量定义

(1)局部变量

局部变量,是用户自定义,只在begin   和end之间有效。

声明局部变量语法:

declare    var_name    type    [default    var_value];

解释:

例如:declare    nickname   varchar(30);

举例:

代码:

                                                     
delimiter  $$
create  procedure   proco2()
begin 
declare   var_name  varchar(20) default 'aaa';
set  var_name  ='zhangsan';-- 给局部变量赋值
select var_name;
end $$
delimiter ;

调用存储过程:

为变量赋值

Mysql中还可以使用select   ....  into  语句为变量赋值。其基本语法为:

select   col_name   [...]   into   var_name  [...]  from   table_name   where   condition;

(1)col_name参数表示查询的字段名称。

(2)var_name参数是变量的名称

(3)table_name参数指表的名字

(4)condition参数指查询条件

注意:当将查询结果赋值给变量时,该查询语句的返回结果只能是单行单列。

示例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值