mysql存储过程/存储函数/触发器/事件

前言

数据库本身支持存储过程,不同的数据库管理系统对存储过程的支持都不尽相同

从mysql5.0开始,mysql支持存储过程/存储函数/触发器/事件

使用存储过程的优点

存储过程执行一次后,其执行的规划就驻留在高速缓冲存储器上,以后再次调用存储过程时,只需从高速缓冲存储器中调用以编译好的二进制代码执行,提高系统性能

(也就是说,sql本质上是编译型语言,存储过程这个程序用sql语句写好之后,将sql语句进行编译,编译得到二进制代码可以直接运行在机器上,无需再次编译,一次编译就可以在机器上无数次运行,这就是存储过程的优点)

对存储过程的理解?

sql语句能在计算机上运行,本质上也是转换成机器码了,sql是一门编译型语言

存储过程就像是一个函数,有输入参数,有返回值

如何使用存储过程?

delimiter //

show procedure status

create procedure xxx(in 参数名 参数类型)

begin

sql....................

end

//

调用存储过程

call xx(参数)

删除存储过程

drop procedure xxx

sql....................存储过程体

声明局部变量declare xx 类型;

使用set为局部变量赋值set xx=值;

流程控制语句if  ...then  ....elseif...   then  ...else

存储函数

存储函数包含returns语句,存储过程没有returns语句

创建存储函数

create function xx(参数)

return type

delimiter //

create function xxx()

returns integer

begin

returns (select count(*) from xx);

end 

//

存储函数创建之后就如同系统提供的内置函数一样调用即可

select xxx();

drop function xxx;

 

 

;

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值