首页 / MYSQL / 什么是mysql存储过程
什么是mysql存储过程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了什么是mysql存储过程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2244字,纯文字阅读大概需要4分钟。
内容图文
![什么是mysql存储过程](/upload/InfoBanner/zyjiaocheng/537/5454b3abc28d4a3797482ee26b2d8f76.jpg)
在MySQL中提供了创建存储过程的能力。存储过程是MySQL以及其他数据库管理系统中的强大功能。接下来在文章中将为大家具体介绍MySQL中的存储过程,具有一定的参考作用,希望对大家有所帮助。
【推荐课程:MySQL教程】
存储过程:
存储过程指的是存储在数据库中的SQL语句的集合。存储过程它可以包含业务逻辑,这是区分存储过程和视图的关键之一。另外存储过程还可以接受参数,我们可以在存储过程中设置变量,写入语句等。
存储过程如何工作
首先要先创建一个存储过程然后再运行。在运行的过程中需要提供它所需要的参数,然后存储过程将以代码指定的任何方式使用参数执行。例如,编写一个接受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存储过程的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的什么是mysql存储过程全部内容,希望文章能够帮你解决什么是mysql存储过程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。