mssql sql server存储过程的优缺点


一、存储过程简介

存储过程是由一组sql组成的集合,具有完成指定功能的sql集合,用户通过存储过程名和输入相应的参数,
存储过程返回相应的结果。


二、存储过程优点

2.1 使用存储过程可以减少服务器/客户端交互时间
由于客户端调用服务器端时,只需输入存储过程名称和参数名,可减少服务器和客户端的之间交互的网络流量
2.2 更强的安全性
由于存储过程是作为db服务器中的一个对象,我们可以设置存储过程权限,增强db数据库服务器的安全,
也可以对存储过程进行加密,避免非系统开发人员查看系统逻辑
2.3 sql代码可重复使用
将相同的功能进行封装为存储过程,方便客户端多次调用,达到sql代码的重复利用
2.4 更高的执行效率
由于采用存储过程运行,代码在首次运行时,已经编译并缓存至db服务器,方便下次调用,缩短sql执行时间
2.5 易于维护
应用程序如果需改变数据操作逻辑,只需变更存储过程中的内容, 而无需变更应用程序,所以方便程序修改。


三、存储过程缺点

3.1 不便于底层数据库切换,因为每种数据库存储过程的写法都一致,所以采用存储过程编写的程序,使程序无法快速移置。
3.2 当底层表变化后,需要将存储过程重新编译,存储过程才能得到正确的运行。