MySQL8.0学习笔记(8)—— stored procedures,function

stored procedures

创建stored procedures

存储过程(Stored Procedure)是:大型数据库系统中,一组为了完成特定功能的 SQL 语句集,这些SQL语句集存储在数据库中,经过第一次编译后,后续调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。
存储过程是数据库的一个重要对象。

  • 创建一个存储过程
use sql_invoicing;
//DELIMITER将标准分隔符分号";"更改为$$,保证存储过程内容的整体性
DELIMITER $$
//创建一个新的存储过程,存储过程的名字为get_clients()
CREATE PROCEDURE get_clients()	
//BEGIN和END之间的部分称为存储过程的主体
BEGIN
	SELECT * FROM clients;
END$$
DELIMITER ;
  • 调用一个存储过程
call sql_invoicing.get_clients();

使用MySqlWorkbeach创建stored procedures

自己写时,每次都要修改限定符有点麻烦,可以按照如下步骤

  1. 每个database中有 Stored Procedures,右击选择CREATE Stored Procedures
    在这里插入图片描述
  2. 只需要关注自己需要填写的内容
    在这里插入图片描述
  3. 点击Apply按钮
    在这里插入图片描述
    顺便说下删除stored procedures
DROP PROCEDURE IF EXISTS get_invoices;
  1. 在点击右下角Apply

Parameters

对于stored procedures构成的参数可以进行传参


USE `sql_invoicing`;
DROP procedure IF EXISTS `git_clients`;

DELIMITER $$
USE `sql_invoicing`$$
//state 参数名;char(2)参数类型
CREATE PROCEDURE `git_clients` (state char(2))
BEGIN
select * from  client c
where c.state = state;
END$$

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值