一、什么是存储过程
存储过程(Stored Procedure)是存储在数据库目录中的一段声明性SQL语句,是为了完成特定功能的SQL语句集。用户可以通过指定存储过程的名称以及参数来调用执行,是数据库SQL语言层面的代码封装与重用。
二、存储过程的优缺点
- 优点
1.存储过程可以封装,隐藏复杂的商业逻辑
2.存储过程可以接受参数并回传值
3.存储过程对任何的应用程序都是透明和可重用的,将数据库接口暴露给所有的应用程序,以便开发人员无需开发存储过程已存在的功能。
4.存储的程序是安全的,可以向访问数据库存储过程的应用程序授予适当的权限,而不向基础数据库表提供任何权限
- 缺点
1.存储过程往往定制在特定的数据库上,因支持的编程语言不同,当切换到其他厂商的数据库系统时需要重写存储过程
2.存储过程的性能调优与撰写受限于各种数据库系统
三、存储过程的操作
CREATE PROCEDURE 存储过程名称([参数列表])
BEGIN
需要执行的语句
END
例如:创建一个实现计算1到n的求和功能的存储过程
CREATE PROCEDURE `get_num`(IN n INT)