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

日期: 2008-06-19 来源:TechTarget中国

 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里输入,&#101xec testJava1();


  即可看到结果:


  Hello


  PL/SQL procedure successfully completed

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐