sql存储过程和动态sql的功能类似,那么,sql存储过程究竟比动态sql好在哪里呢?下面就将对sql存储过程和动态sql进行比较,供您参考。
sql存储过程跟动态sql相比有如下优点:
1、 sql存储过程允许标准组件式编程
存储过程在被创建以后可以在程序中被多次调用而不必重新编写该存储过程的SQL
语句而且数据库专业人员可随时对存储过程进行修改但对应用程序源代码毫无影响因
为应用程序源代码只包含存储过程的调用语句从而极大地提高了程序的可移植性
2 、sql存储过程能够实现较快的执行速度
如果某一操作包含大量的Transaction-SQL 代码或分别被多次执行那么存储过程要
比批处理的执行速度快很多因为存储过程是预编译的在首次运行一个存储过程时查
询优化器对其进行分析优化并给出最终被存在系统表中的执行计划而批处理的Transaction-
SQL 语句在每次运行时都要进行编译和优化因此速度相对要慢一些
3 、sql存储过程能够减少网络流量
对于同一个针对数据数据库对象的操作如查询修改如果这一操作所涉及到的
Transaction-SQL 语句被组织成一存储过程那么当在客户计算机上调用该存储过程时
网络中传送的只是该调用语句否则将是多条SQL 语句从而大大增加了网络流量降
低网络负载
4、 sql存储过程可被作为一种安全机制来充分利用
系统管理员通过对执行某一存储过程的权限进行限制从而能够实现对相应的数据访
问权限的限制避免非授权用户对数据的访问保证数据的安全
【编辑推荐】