一、存储过程介绍
### --- 什么是存储过程
——> MySQL 5.0 版本开始支持存储过程。
——> 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,
——> 以便外部程序调用的一种数据库对象。存储过程是为了完成特定功能的SQL语句集,
——> 经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。
——> 简单理解: 存储过程其实就是一堆 SQL 语句的合并。中间加入了一些逻辑控制。
### --- 存储过程的优缺点
~~~ # 优点
——> 存储过程一旦调试完成后,就可以稳定运行,(前提是,业务需求要相对稳定,没有变化)
——> 存储过程减少业务系统与数据库的交互,降低耦合,数据库交互更加快捷(应用服务器,与数据库服务器不在同一个地区)
~~~ # 缺点:
——> 在互联网行业中,大量使用MySQL,MySQL的存储过程与Oracle的相比较弱,所以较少使用,并且互联网行业需求变化较快也是原因之一
——> 尽量在简单的逻辑中使用,存储过程移植十分困难,数据库集群环境,保证各个库之间存储过程变更一致也十分困难。
——> 阿里的代码规范里也提出了禁止使用存储过程,存储过程维护起来的确麻烦;
——> 强制:禁止使用存储过程,存储过程难以调试和扩展,更没有移植性。
二、sql语句
### --- sql语句
/*
存储过程其实就是一堆 SQL 语句的合并。中间加入了一些逻辑控制。
存储过程的优缺点
优点
1.调试完成就可以稳定运行 (在业务需求相对稳定情况)
2.存储过程可以减少 业务系统与数据库的交互
缺点
1.互联网项目中 较少使用存储过程,因为 业务需求变化太快
2.存储过程的移植十分困难.
*/