10.1.2 存储过程的作用
存储过程编写相对比较复杂,但很多单位或个人都在使用它。显然这不是因为存储过程编写简单,而是因为它有着一系列的优点:
❑简化复杂的操作。存储过程可以把需要执行的多条SQL语句封装到一个独立单元中,用户只需调用这个单元就能达到目的。这样就实现了一人编写多人调用,同时缩短了平均开发周期,为公司节省了成本。
❑增加数据独立性。与视图的效果类似,利用存储过程可以把数据库基础数据和程序(或用户)隔离开来,当基础数据的结构发生变化时,可以修改存储过程,这样对程序来说基础数据的变化是不可见的,也就不需要修改程序代码了。
❑提高安全性。使用存储过程有效地降低了错误出现的几率。如果不使用存储过程要想实现某项操作可能需要执行多条单独的SQL语句,而过多的执行步骤很可能造成更高的出错几率。不仅如此,实际工作中开发人员的水平参差不齐,由高水平的人编写存储过程,水平较低的人员直接调用,这样就能避免很多不必要的错误发生。此外,存储过程也可以进行权限设置。
❑提高性能。完成一项复杂的功能可能需要多条SQL语句,同时SQL每次执行都需要编译,而存储过程可以包含多条SQL语句,而且创建完成后只需要编译一次,以后就可以直接调用,从这方面来看存储过程可以提高性能。如果程序语言要实现某项比较复杂的功能,它会多次连接数据库,在使用存储过程的情况下,程序只需连接一次就能达到目的。