ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【转】存储过程的作用和意义

2019-06-10 13:01:36  阅读:137  来源: 互联网

标签:语句 存储 意义 数据库 编译 SQL 过程


一、什么是存储过程:
存储过程
是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,
用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。
二、为什么要用存储过程呢?
存储过程真的那么重要吗,它到底有什么好处呢?存储过程说白了就是一堆SQL 的合并。中间加了点逻辑控制。
1.存储过程处理比较复杂的业务时比较实用。具体分为两个方面:
(一)响应时间上来说有
优势:如果你在前台处理的话。可能会涉及到多次数据库连接。但如果你用存储过程的话,就只有一次。存储过程可以给我们带来运行效率提高的好处;
(二)、从安全上使用了存储过程的系统更加稳定:程序容易出现BUG 不稳定,而存储过程,只要数据库不出现问题,基本上是不会出现什么问题的。
2.数据量小的项目不用存储过程也可以正常运作。
三、那么什么时候才需要用存储过程?
存储过程不仅仅适用于大型项目,对于中小型项目,使用存储过程也是非常有必要的。
其优势主要体现在:
1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL 语句每执行一次就编译一次所以使用存储过程可提高数据库执行速度。
2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete 时)可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。
这些操作,如果用程序来完成,就变成了一条条的SQL 语句,可能要多次连接数据库。而换成存储,只需要连接一次数据库就可以了。
3.存储过程可以重复使用
可减少数据库开发人员的工作量。
4.安全性高
可设定只有某此用户才具有对指定存储过程的使用权。
5.更强的适应性:由于存储过程对数据库的访问是通过存储过程来进行的,因此数据库开发
人员可以在不改动存储过程接口的情况下对数据库进行任何改动,
而这些改动不会对应用程
序造成影响。
6.分布式工作:应用程序和数据库的编码工作可以分别独立进行,而不会相互压制。
一般来说,存储过程的编写比基本
SQL
语句复杂,编写存储过程需要更高的技能,更
丰富的经验。
四、开发中存储过程使用的优势和劣势
优点如下:
1.执行效率高.
2.安全性能好。
3.对于一些场合非常容易实现需求。

缺点如下:
1.可维护性比较差。
2.可读性也差。

标签:语句,存储,意义,数据库,编译,SQL,过程
来源: https://www.cnblogs.com/story-xc/p/10997088.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有