用PLSQL和Java开发Oracle8i应用程序

用PLSQL和Java开发Oracle8i应用程序

ID:41009985

大小:130.00 KB

页数:16页

时间:2019-08-13

用PLSQL和Java开发Oracle8i应用程序_第1页
用PLSQL和Java开发Oracle8i应用程序_第2页
用PLSQL和Java开发Oracle8i应用程序_第3页
用PLSQL和Java开发Oracle8i应用程序_第4页
用PLSQL和Java开发Oracle8i应用程序_第5页
资源描述:

《用PLSQL和Java开发Oracle8i应用程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、用PL/SQL和Java开发Oracle8i应用程序简介随着Oracle8i的发布,Oracle在数据库里支持了二种主要的编程语言——PL/SQL和Java。今天,Oracle的许多客户既使用PL/SQL建立数据库应用程序,也使用Java建立数据库应用程序。既然存在二种数据库编程语言,那么就有一个很自然的问题:建立Oracle8i应用程序时,PL/SQL和Java哪一个更好?我们来快速地回顾一下,PL/SQL给Oracle数据库开发人员提供了强大的功能,包括:高性能、易使用、无缝地与SQL结合,以及强壮性。现在,P

2、L/SQL依旧是一个成熟的开发数据库应用程序的过程性语言,而且是建立SQL密集型和数据密集型应用程序的理想语言。随着Oracle8i的推出,Oracle在数据库里引入了Java,给这种十分流行的通用语言提供了强壮的、大规模的平台。利用企业JavaBean和CORBA,可以用Java开发多层、面向组件的应用程序;也可以用Java开发传统的数据库存储过程。Oracle8i提供了多种特性,可以简化用PL/SQL和Java建立应用程序的过程,而且可以容易地把二种语言编写的应用程序组合起来。这份白皮书,提供了有关Oracle

3、8i中PL/SQL和Java特性的技术概述,并就如何利用它们建立应用程序提供了实际可行的指导。白皮书分成四个部分:由于许多Oracle客户都有现存的PL/SQL应用程序,所以,我们开始时,先描述如何现有的PL/SQL程序与Java组合,扩展现有PL/SQL程序;然后,我们描述二种语言里共有的应用程序编程特性,解释如何把PL/SQL和Java共同使用;在第三部分,描述怎样利用PL/SQL和Java建立应用程序才算最好(例如:什么时候用PL/SQL最合适,什么时候用Java最合适);最后,我们讨论一些真实的例子,实际演

4、示Oracle的客户们目前在Oracle8i里是如何使用PL/SQL和Java的。用PL/SQL和JAVA建立应用程序开始,我们首先看一下拥有PL/SQL应用程序的客户的场景:客户们想在服务器里增加新的Java代码,从而扩充原有的PL/SQL应用程序。有三个特别的问题需要考虑:第一,Oracle8i里支持的主要存储过程类型是什么,可以用什么途径调用它们;第二,Java在Oracle8i里如何工作,Java如何同PL/SQL互操作;第三,Oracle8i服务器如何处理PL/SQL和Java之间的名称解析。在整个白皮书

5、里,“Java”这个单词,既指标准的Java,也指SQLJ(Java里的嵌入SQL),只有在明确地表明讨论不同概念时,才表示不同的意思。Oracle8i中存储过程的类型Oracle8i支持的存储过程类型有几种?Oracle8i支持四种不同类型的存储过程——用PL/SQL或Java,都可以实现全部四种类型的存储过程。这四种存储过程类型是:存储过程——顶级存储过程允许客户用任意商业逻辑扩展SQL。客户用名称调用存储过程,可以在SQL、PL/SQL包、以及“顶级”位置上调用存储过程。存储函数——存储函数实质上与存储过程相

6、同,不同之处在于存储函数向调用者返回值。可以用名称调用存储函数,也可以在SQL、PL/SQL包、以及“顶级”位置上调用存储函数。数据库触发器——触发器是与特定的表和视图关联的商业规则,修改对表或视图时,SQL自动调用触发器。Oracle8i提供了几种类型的触发器:在SQLDML语句执行之前或之后激发的触发器;在每一行更新之前或之后激发的触发器;事件触发器(例如:登录、退出、DDL语句、数据库启动或关闭等的触发器);替代(instead-of)触发器。所有这些触发器类型,都可以用PL/SQL或Java编写。对象类型方

7、法——Oracle8™发行版8.0和Oracle8i提供了用SQL定义复合数据类型的能力。这些对象类型的方法,可以用Java实现,也可用PL/SQL实现。例如,可以用SQL定义一个订单对象类型purchase_order_t,如下所示:CREATETYPEpurchase_order_tASOBJECT(ponoNUMBER,custrefREFcustomer_info_t,orderdateDATE,shipdateDATE,line_item_listline_item_list_t,shiptoaddrad

8、dress_t,MEMBERFUNCTIONtotal_valueRETURNNUMBER,);然后实现这个对象类型的方法…CREATEORREPLACETYPEBODYpurchase_order_tASMEMBERFUNCTIONtotal_valueRETURNNUMBERISiINTEGER;stockstock_info_t;line_itemli

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。