资源描述:
《文献综述(oracle存储过程原理及应用》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、宋龙:重庆交通大学毕业设计(文件综述)毕业设计(论文)文献综述题目Oracle存储过程原理及应用专业计算机科学与技术班级07级计科1班学生宋龙指导教师王家伟重庆交通大学2011年9宋龙:重庆交通大学毕业设计(文件综述)ORACLE存储过程原理及应用摘要计算机技术的飞速发展,推动了整个社会的信息化进程,促进了信息技术的进步,催生了量的信息系统,尤其是各种管理软件。而管理软件离不开对大量数据的处理,这就要依赖于数据库管理系统。Oracle是当前世界上使用最为广泛的数据库管理系统之一,由于Oracle拥有强大的数据管理
2、能力和较好的数据保密性,以及出众的技术优势。Oracle得到了大规模的应用,它经常作为大型管理软件的后台数据库。程序可以通过相应的软件接口对数据库进行操作,因为大型系统的业务规则一般都比较复杂,需要进行多个库表的操作,逻辑比较复杂,如果单纯使用SQL语句进行数据库操作,应用程序代码会非常冗长,网络传输的负担会加重,系统响应速度也较慢,一旦业务规则发生变化,需要进行大量的代码修改工作,尤其是对于非常复杂的数据库操作,作量会成倍增长,与此相应的系统调试的工作量也很大。这非常不利于系统的维护和使用,同时造成了系统客户端
3、的工作量的加大,而服务器强大的处理能力又被闲置。针对这种弊端,几乎所有的大型系统都使用存储过程来进行数据库操作。采用这种数据库操作模式,可以把应用程序和数据库操作相对独立开来,分别管理。关键字:信息技术,Oracle,数据管理,存储过程,数据保密,数据库,数据库技术,数据库系统9宋龙:重庆交通大学毕业设计(文件综述)引言在Oracle中,复杂的业务规则和应用逻辑可作为过程(procedure)存储。存储过程是一组SQL和PL/SQL语句,它允许我们把加强业务规则的代码从应用移动到数据库中。结果是,代码只存储了一次
4、,却可以被多个应用使用。因为Oracle支持存储过程,应用中的代码可以变得更紧凑一致和更易于维护。使用存储过程可以极大地提高数据访问效率,提升整个应用系统的性能。针对一些比较复杂的业务规则的处理,可以放在数据库中由服务器执行。在客户服务器或三级应用中,把复杂应用的处理,从应用转移到数据库服务器,可以明显提高性能。另外,因为数据代码被存储在数据库中且为静态,可以从重复使用数据库中的相同查询获益。系统全局区中的共享SQL区(sharedSQLArea)储存可执行命令执行后的分析版本。从而当一个过程被再次执行时,它将能
5、够利用上一次执行的分析操作来提高过程的执行性能。基于这些原因,应用开发的效果也从中受益。为了创建一个过程对象,必须拥有CREATEPROCEDURE系统权限(为角色RESOURECE的一部分)。如果此过程对象在另一用户的领域中,则必须拥有CREATEANYPROCEDURE系统权限。因为存储过程往往与一些数据库表有关联,所以要保证存储过程的正常使用,这些过程对象的所有者必须对这些表拥有一定的操作权限,而执行这些过程对象的用户并不需要在其所基于的表上具有特权。这样的用户,仅需在此过程对象上具有EXECUTE权限即可
6、。1存储过程简介存储过程是SQL语句和可选控制流语句的预编译集合,以一个名称存储作为一个单元处理.与传统意义上SQL规范中的SQL语言不同,它是由SQL语句和流控制语句共同组成的一个过程序,通过所设置的参数,调用其它过程,并返回状态值给调用者以指示操作的成功或失败,并能够在远程数据库中运行.此外,存储过程经过数据库编译和优化后存储在数据库服务器中,用以被客户程序执行调用.2存储过程的优点1)提高系统效率[2].对于客户端来说,只要调用已在服务器中存放的存储过程,并通过网络发送该过程名和少量入口参数,数据库服务器就
7、可以执行该过程,在执行完成后只返回结果集数据给客户端应用程序,9宋龙:重庆交通大学毕业设计(文件综述)而无需再在网上传送大量的命令和中间结果数据,这可以降低网络负担,并且又可以充分利用服务器的高性能来提高运算速度.2)提高系统可维护性.因为修改存储过程通常比修改所部署的组件中的硬编码SQL语句要容易.并且存储过程和组件一样能够作到一次编写多次调用,修改与程序的其他部分独立.3)增强系统的安全性.当创建了存储过程之后,可以将执行该过程的权限授予其它用户,从而使得他可以执行特定的数据库操作,而不能访问其它模式对象(例
8、如表).例如,你可以将执行过程(更新表)的权限授予其它用户,但不授予它们直接访问该表的权限.4)减少网络负荷.当客户端发出执行存储过程的请求时,只有执行存储过程的命令在内部网络上传送,当它们到达数据库服务器时,运行存储过程,客户端在网上只接收返回结果或状态信息,使得客户机与服务器的通讯量降至最小,大大减少了网络负荷.3存储过程的使用3.1存储过程的使用前提在Oracle中