百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> 什么是mysql存储历程
分享文章到:

什么是mysql存储历程

发布时间:08/01 来源:未知 浏览: 关键词:
MySQL中的存储历程指的是存储在数据库中的SQL语句汇合,当新建好存储历程后在运转时供给所需参数,存储历程就可以以代码指定的方式运用参数施行并返回值 MySQL中的存储历程指的是存储在数据库中的SQL语句汇合,当新建好存储历程后在运转时供给所需参数,存储历程就可以以代码指定的方式运用参数施行并返回值

在MySQL中供给了新建存储历程的能力。存储历程是MySQL以及其他数据库治理系统中的强大功能。接下来在文章中将为大家概括介绍MySQL中的存储历程,拥有一定的参照 作用,但愿对大家有所帮忙。

第一要先新建一个存储历程然后再运转。在运转的历程中需要供给它所需要的参数,然后存储历程将以代码指定的任何方式运用参数施行。例如,编写一个承受FruitId参数的存储历程。然后在存储历程可以猎取该参数并运用它来检查该特定水果的库存。因而我们可以调取存储历程,即每次运用不一样的水果ID它都将返回一个值,并显示该库存中有多少水果。

新建存储历程

我们可以通过CREATE PROCEDURE语句新建存储历程

CREATE PROCEDURE demo_name(p_1 INT)
BEGIN
  ...code goes here...
END;

demo_name指的是存储历程的名称,括号是必需的,要是里面不包括任何参数则括号可认为空

存储历程的主体是介于BEGIN和END关键字之间。这些关键字用于编写复合语句。复合语句可以包括多个语句,要是需要,可以嵌套这些语句。

例:新建一个存储历程名为FruitStock:

DELIMITER //

CREATE PROCEDURE FruitStock(thisFruit SMALLINT)
BEGIN
	SELECT 
		Fruit.FruitName, 
		Fruit.Inventory, 
		Units.UnitName
	FROM 
		Fruit INNER JOIN Units ON
		Fruit.UnitId = Units.UnitId
	WHERE 
		Fruit.FruitId = thisFruit;
END //

DELIMITER ;

新建好了一个存储历程,接下来将调取这个存储历程

调取一个参数为1的ID

CALL FruitStock(1);

删除存储历程

可以运用DROP PROCEDURE语句删除存储历程。

DROP PROCEDURE FruitStock;

转变存储历程

在存储历程中可通过以下语句更改存储历程ALTER PROCEDURE。

需要注意要更改存储历程的主体或其任何参数时,需要删除该历程然后再次新建

例:增加Fruit.FruitId所要返回的列表

DROP PROCEDURE IF EXISTS FruitStock;
DELIMITER //
CREATE PROCEDURE FruitStock(thisFruit SMALLINT)
BEGIN
	SELECT 
		Fruit.FruitId, 
		Fruit.FruitName, 
		Fruit.Inventory, 
		Units.UnitName
	FROM 
		Fruit INNER JOIN Units ON
		Fruit.UnitId = Units.UnitId
	WHERE 
		Fruit.FruitId = thisFruit;
END //

DELIMITER ;

总结:以上就是本篇文章的全部内容了,但愿对大家有所帮忙。

以上就有哪些是mysql存储历程的细致内容,更多请关注 百分百源码网 其它相干文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板