
存储过程:
存储过程是SQL语句和可选控制流语句的预编译集合,以名称存储并作为一个单元进行处理. 存储过程存储在中,可以由应用程序通过一次调用执行,并允许用户声明变量,条件执行和其他强大的编程功能. 存储过程在创建时会在服务器上进行编译,因此它们的执行速度比单个SQL语句快.
存储过程的优缺点:
优点:

1. 存储过程仅在创建时进行编译. 将来,不需要每次都重新编译存储过程. 通常,SQL语句在每次执行时都会进行编译,因此使用存储过程可以提高执行的速度.
2. 在上执行复杂操作时(例如在多个表上执行更新,插入,查询,删除时),可以将此复杂操作与存储过程打包在一起,并与提供的事务处理结合使用.
3. 存储过程可以重复使用,可以减少开发人员的工作量
4. 高度安全,您可以设置只有该用户有权使用指定的存储过程

缺点:
1. 运行速度: 大多数高级系统都具有语句高速缓存,因此编译SQL的成本没有影响. 但是执行存储过程比直接执行SQL(检查权限等)要花费更多,因此对于非常简单的SQL,存储过程没有任何优势.
2. 网络负载: 如果在存储过程中没有多个数据交互,则网络传输量实际上与直接SQL相同.
3. 团队开发: 不幸的是,与成熟的IDE相比,没有好的IDE支持存储过程,也就是说,必须手动完成.

4. 安全机制: 对于传统的C / S结构,连接的用户可以不同,因此安全机制很有用;但是在Web的三层体系结构中,用户不是针对用户的,因此基本上,只有一个拥有所有权限的用户(最多一个开发用户). 此时的安全机制有点多余.
5. 客户满意度: 实际上,这仅仅是统一访问的接口,无论是存储过程还是EJB,都没关系,也就是说,在三层结构中mysql怎么调用存储过程,设计了一个单独的数据访问层. ,也可以实现这个目标.
6. 开发和调试: 同样,由于IDE的问题,存储过程的开发和调试比普通程序要困难得多(旧版本的DB2只能用C编写存储过程,这很麻烦).
7. 可移植性: 算了,不用说了,总的来说,常规应用程序总是绑定到某个,否则您将无法通过优化访问来提高性能.

8. 可维护性: 确实,存储过程有时比程序更易于维护. 这是因为可以实时更新DB端的存储过程mysql怎么调用存储过程,但是在三层结构中,更新服务器端的数据访问层可以实现此目标. 不幸的是,许多平台不支持实时更新.
创建mysql存储过程的语句:
create procedure Cun() begin select * from fruit end
调用存储过程
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-159459-1.html
此时此刻特别怀念毛主席
清者自清
想得美台独