博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为什么存储过程比sql语句效率高?
阅读量:4687 次
发布时间:2019-06-09

本文共 975 字,大约阅读时间需要 3 分钟。

存储过程经过预编译处理 而SQL查询没有

SQL语句需要先被数据库引擎处理成低级的指令 然后才执行

-------------------------------------------------------

如果是只执行一次的话,存储过程不一定比SQL语句效率高.因为存储过程有个预先编译的过程.就是.启动服务器后或者第一次执行后(可以设置).就可以把存储过程加载到高速缓存中,这样以后调用起来就不用再通过编译 执行效率当然就高喽..另外执行存储过程只需要传递几个参数..用语句的话可能需要一大串.有效减少了传递数据.

-------------------------------------------------------

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

转载于:https://www.cnblogs.com/herizai/p/7204125.html

你可能感兴趣的文章
PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同!
查看>>
导入properties时的坑
查看>>
python——网络编程
查看>>
Spark的39个机器学习库
查看>>
Electron学习笔记(一)
查看>>
Java并发编程:CountDownLatch、CyclicBarrier和Semaphore
查看>>
配置NRPE的通讯
查看>>
VS2005编译VTK5.10.1
查看>>
shp系列(一)——利用C++进行shp文件的读(打开)与写(创建)开言
查看>>
总结上海永辉云商高级前端职位面试题集
查看>>
中国计算机学会推荐国际学术会议和期刊目录
查看>>
各种可以远程
查看>>
分治法实现1-N的数字按字典序全排列组合 Java语言
查看>>
匹配两个空格之间的字符。。。
查看>>
CSS 文字溢出 变成省略号 ...
查看>>
Spring事务
查看>>
java编程基础(三)流程控制语句
查看>>
让数据库跑的更快的7个MySQL优化建议
查看>>
jquery 取id模糊查询
查看>>
解决在vue中,自用mask模态框出来后,下层的元素依旧可以滑动的问题
查看>>