mysql存储过程的案例剖析
发布时间:2022-02-19 14:35:42 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍mysql存储过程的案例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 1、什么是存储过程 为以后的使用而保存的一条或多条MySQL语句的集合。 存储过程思想上就是数据库 SQL 语言层面的代码封装与重用。 2、为什
|
这篇文章主要介绍mysql存储过程的案例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 1、什么是存储过程 为以后的使用而保存的一条或多条MySQL语句的集合。 存储过程思想上就是数据库 SQL 语言层面的代码封装与重用。 2、为什么要使用存储过程 把处理封装在容易使用的单元中,简化复杂的操作 防止错误保证了数据的一致性 简化对变动的管理。(修改对应表名、列名等修改对应存储过程的代码,对于使用的人不需要知道变化) 提高性能 灵活 总的来说是简单、安全、高性能 缺点: 编写比SQL语句复杂 权限问题(可能无权、一般都是使用存储过程、没有创建存储过程的权限) 3、创建存储过程 CREATE PROCEDURE productpricing() BEGIN SELECT Avg(prod_price) AS priceaverage FROM products; END 注意:在命令行中输入的问题 mysql> delimiter // mysql> CREATE PROCEDURE productpricing() -> BEGIN -> SELECT Avg(prod_price) AS priceaverage -> FROM products; -> END // 4、使用存储过程 存储过程实际上是一种函数 CALL productpricing(); 4、删除存储过程 drop procedure productpricing; drop procedure if EXISTS productpricing; 5、使用参数 一般,存储过程并不显示结果,而是把结果返回给你指定的变量 变量(variable)内存中一个特定的位置,用来临时存储数据。 CREATE PROCEDURE productpricing( OUT p1 DECIMAL(8,2), OUT ph DECIMAL(8,2), OUT pa DECIMAL(8,2) ) BEGIN SELECT MIN(prod_price) INTO p1 FROM products; SELECT MAX(prod_price) INTO ph FROM products; SELECT avg(prod_price) INTO pa FROM products; END; 关键字OUT指出相应的参数用来从存储过程传出 一个值(返回给调用者)。 MySQL支持IN(传递给存储过程)、 OUT(从存 储过程传出,如这里所用) INOUT(对存储过程传入和传出)类型的参 数。 (编辑:均轻资讯网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

