新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > JAVA > 正文:使用Java来编写Oracle数据库的存储过程

使用Java来编写Oracle数据库的存储过程

新客网 XKER.COM 2007-07-04 来源:赛迪网技术社区 dxaw 收藏本文

Oracle里可以使用多种语言来编写存储过程,比如Pro*C/C++,PL/SQL,COBOL,在Oracle8i开始支持用Java编写存储过程。

如果非要写存储过程的话,做为以Java谋生的我,首选用Java编写,用PL/SQL需要记忆很多的语法(Pascal类的语法)和函数,远不如使用Java/JDBC这么轻车熟路。而且,DB2等数据库都支持Java存储过程,所以不比为每一种数据学习一种编写存储过程的方法了。

Java存储过程与一般的JDBC程序有所不同的是:

1.有安全限制,毕竟是在oracle内部运行的,不允许访问操作系统的资源,如文件。

2.获取数据库联接方式,connection = new OracleDriver().defaultConnection();

3.System.out,System.err,System.in等输入输出有所不同。可以利用某些命令重定向。

下面用Java 存储过程写一个Hello World的例子。

1)在plsqldeveloper里,java source里增加一个TestJava1类,

代码

create or replace and compile java source named TestJava1 as

public class TestJava1

{

public static void test()

{

System.out.println("Hello");

}

}

 

执行它,以保存并编译。

2)增加一个procedure,执行如下命令:

代码

create or replace procedure testJava1

as

language java name 'TestJava1.test()';

3)在command window里输入

代码

SET SERVEROUTPUT ON;

CALL dbms_java.set_output(2000);

以使System.out重定向到当前窗口;

在command window里输入,exec testJava1();

即可看到结果:

Hello

PL/SQL procedure successfully completed

(责任编辑:龚勋)

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐