PLSQL简介(一)【翻译】
PLSQL简介(一)【翻译】
PL / SQL代表“结构化查询语言和过程语言。 Oracle公司推出了PL / SQL克服SQL中的一些限制并提供更完整的编程解决方案。 什么是PLSQLOracle的PL / SQL语言有几个定义特征: 它是一种嵌入式语言PL / SQL并非设计用作独立语言,而是在主机环境中使用。因此,例如,您可以从数据库中运行PL / SQL程序(例如,通过SQL * Plus接口)。或者,您可以在Oracle De-veloper表单或报表中定义和执行PL / SQL程序(此方法称为客户端PL / SQL)。但是,您不能创建一个可以自行运行的PL / SQL可执行文件。 它是一种高性能,高度集成的数据库语言。现在,在编写软件以运行Oracle数据库时,您有很多选择。您可以使用Java和JDBC;你可以使用Visual Basic和ODBC;你可以使用Delphi,C ++等。但是,您会发现,使用任何其他语言编写高效的代码来访问PL / SQL中的Oracle数据库更容易。特别是,Oracle提供某些特定于PL / SQL的增强功能,例如FORALL语句,可以将数据库性能提高一个数量级或更多。 PLSQL起源Oracle 公司一直领导软件行业,为数据库和应用程序的设计提供声明式,非过程性的方法。 Oracle服务器技术是世界上最先进,功能最强大,最稳定的关系数据库之一。它的应用程序开发工具,例如Oracle Forms,通过严格依赖“绘制屏幕”方法提供高水平的生产力,可以让开发人员避免繁重的自定义程序设置。 PLSQL早期版本在Oracle的早期阶段,SQL的声明性方法与其突破性的关系技术相结合,足以满足开发人员的需求。但随着行业的发展,预期上升,需求变得更加严格。开发人员需要获得产品一些更深入的东西。他们需要在表单和数据库脚本中构建复杂的准则,异常和规则。 1988年,甲骨文公司发布了Oracle版本6,这是其关系的重大进步数据库技术。该版本的一个关键组成部分是所谓的程序性选项,或PL / SQL。几乎在同一时间,Oracle发布了期待已久的升级版到SQL * Forms版本2.3(现在称为Oracle的产品的原始名称表格或表格开发者)。 SQL * Forms v3包含了PL / SQL引擎,第一次在工具方面,允许开发人员编写他们的程序逻辑自然,直截了当的方式。 PL/SQL的第一次发布在其能力上是非常有限的。在服务器端,您只能使用PL/SQL来构建过程和SQL状态的“批处理”脚本。不能在服务器中构造模块化应用程序或存储业务规则。在客户端,SQLFraseV3.0确实允许您创建过程和函数,虽然对函数的支持未被记录,因此多年来它们没有被许多开发人员使用。此外,PL/SQL的这种发布没有对数组进行支持,并且不能与操作系统(输入输出)交互。这与一门成熟的编程语言相去甚远。 但是由于它的所有的这些的局限性,PL / SQL在开发人员社区中得到了热烈的,甚至是热情的。对在SQL * Forms中编写简单IF语句的能力的渴望很强烈。执行多SQL语句批处理的需求势不可挡。 当时很少有开发人员意识到PL / SQL背后的原始动机和驱动超出了对SQL * Forms等程序控制内部产品的需求。在Oracle数据库和工具的生命周期的早期,Oracle公司已经认识到其架构中的两个关键弱点:缺乏可移植性和执行权限问题。 改善可移植性对于熟悉Oracle公司的人来说,对可移植性的担忧可能有点奇怪poration的营销和技术策略。 Oracle解决方案的标志之一 - PL / SQL语言是(并且是)旨在扩大应用范围 ,可以在独立于操作系统的编程中完全处理的工具。今天Java和其他编程语言提供了类似的可移植性。然而PL / SQL作为该领域的早期先驱脱颖而出,当然,它继续允许开发人员编写高度可移植的应用程。 改进执行权限于事务的完整性比可移植性更基本的问题是执行权限。数据库SQL语言可以让您严格控制对任何特定内容的访问和更改 PL/SQL语言提供了对逻辑事务的严格控制和管理。一方面,PL/SQL是通过执行权限的实现来实现的。相反,授予角色或用户更新表的权限时,只授予权限执行一个过程,该过程控制并提供对基础数据结构的访问。 该过程由不同的Oracle数据库架构(“定义者”)所拥有。 然后,授予这些需要事务的表的更新权限。 程序因此称为事务的“看门人”。一个程序(不管它是oracle-forms还是pro-c可执行文件)的唯一方法是通过该过程,从这个角度,应用程序的事务的完整性就得到了保障。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |