MySQL存储过程浅析

存储过程

定义:

存储过程是一组为了完成特定功能的SQL语句,是由一些SQL语句组成的代码块,这些代码块像方法一样实现一些功能(对单表或多表的增删改查),然后给代码块起一个名字,用到的时候再调用它。存储过程具有输入参数、输出参数和输入/输出参数,可以在数据库服务器上执行。

优点:

  1. 存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度,效率要比T-SQL语句高。
  2. 当对数据库进行复杂操作时,可以用存储过程把这些复杂操作封装起来,与数据库提供的事务处理结合一起使用。
  3. 一个存储过程在程序在网络中交互时可以替代大堆的T-SQL语句,所以也能降低网络的通信量,提高通信速率。
  4. 存储过程可以重复使用,可减少数据库开发人员的工作量。
  5. 安全性高,可设定只有某些用户才具有对指定存储过程的使用权。

创建存储过程

声明分隔符和存储过程的基本语法:

在 MySQL 中,创建一个包含多个 SQL 语句的存储过程时,通常需要声明一个新的分隔符,因为默认的分隔符是 ,而存储过程的主体部分可能包含多个 ;,会导致解析问题。
通过使用 DELIMITER 命令,可以更改分隔符,以便 MySQL 能正确地识别存储过程的开始和结束。
设置新的分隔符(例如 $$),然后在存储过程结束后恢复默认分隔符 ;

DELEMITER $$

CREATE PROCEDURE procedure_name (parameters)
BEGIN
  -- 过程体
EDN $$

DELIMITER ;
/* 参数类型
IN:输入参数,调用时传入。
OUT:输出参数,存储过程执行后传出。
INOUT:既是输入参数又是输出参数  */
  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值