oracle的存储过程优缺点

1.存储过程可以使得程序执行效率更高、安全性更好,因为过程建立之后 已经编译并且储存到数据库,直接写sql就需要先分析再执行因此过程效率更高,直接写sql语句会带来安全性问题,如:sql注入

2.建立过程不会很耗系统资源,因为过程只是在调用才执行。

3.存储过程可以用于降低网络流量,存储过程代码直接存储于数据库中,所以不会产生大量T-sql语句的代码流量。

4.使用存储过程使您能够增强对执行计划的重复使用,由此可以通过使用远程过程调用 (RPC) 处理服务器上的存储过程而提高性能。RPC 封装参数和调用服务器端过程的方式使引擎能够轻松地找到匹配的执行计划,并只需插入更新的参数值。

5.可维护性高,更新存储过程通常比更改、测试以及重新部署程序集需要较少的时间和精力。

6.代码精简一致,一个存储过程可以用于应用程序代码的不同位置。

7.增强安全性:

a、通过向用户授予对存储过程(而不是基于表)的访问权限,它们可以提供对特定数据的访问;

b、提高代码安全,防止 SQL注入(但未彻底解决,例如,将数据操作语言--DML,附加到输入参数);

c、SqlParameter 类指定存储过程参数的数据类型,作为深层次防御性策略的一部分,可以验证用户提供的值类型(但也不是万无一失,还是应该传递至数据库前得到附加验证)。

缺点就是:

1、大量的利用过程,会对服务器压力比较大。

最新文章

  1. oracle备份工具exp-imp
  2. 如何用 .Net 开发
  3. 使用Cookie实现跨域单点登录的原理
  4. [c语言]字符数组、字符串定义
  5. Android微信登陆
  6. Java网络编程——UDP实例
  7. WP8 双击返回键退出
  8. BZOJ-2038 小Z的袜子(hose) 莫队算法
  9. 2433: [Noi2011]智能车比赛 - BZOJ
  10. context:component-scan扫描使用上的容易忽略的use-default-filters
  11. 获取ie浏览器版本号
  12. leetcode学习笔记--开篇
  13. php json_encode转JSON 编码显示中文
  14. JS复习:第二十三章
  15. 快速批量插入sqlserver方法之我见
  16. 初学笔记之:Java_Script的for循环事件绑定
  17. 安装oracle11g client 【INS-30131】执行安装程序验证所需的初始设置失败的解决方法
  18. golang goroutine 介绍
  19. (零)SQL server安装配置
  20. 查找->动态查找表->键树(无代码)

热门文章

  1. gulp之压缩图片
  2. Jetson TX2火力全开
  3. JVM插码之三:javaagent介绍及javassist介绍
  4. hdu 5616 Jam's balance 正反背包+转换
  5. css3 利用perspective实现翻页效果和正方体 以及翻转效果
  6. Linker Tools Error LNK2001
  7. keil5编译时出现 MDK-Pro middleware is not allowed with this license
  8. 代码 c++实现动态栈
  9. CentOS 7 配置 mariadb
  10. Spinner 通过XML形式绑定数据时 无法从String.xml中读取数组