如何在Oracle数据库中使用Java存储过程
本文以Oracle为例 介绍一下java存储过程的具体用法
一 如何创建java存储过程?
通常有三种方法来创建java存储过程
使用Oracle的sql语句来创建
e g 使用create or replace and pile java source named as
后边跟上java源程序 要求类的方法必须是public static的 才能用于存储过程
SQL> create or replace and pile java source named javademo
as
import java sql *;
public class JavaDemo
{
public static void main(String[] argv)
{
System out println( hello java demo );
}
}
/
Java 已创建
SQL> show errors java source javademo
没有错误
SQL> create or replace procedure javademo
as
language java name JavaDemo main(java lang String[]) ;
/
过程已创建
SQL> set serveroutput on
SQL> call javademo ();
调用完成
SQL> call dbms_java set_output( );
调用完成
SQL> call javademo ();
hello java demo
调用完成
SQL> call javademo ();
hello java demo
调用完成
使用外部class文件来装载创建
e g 这里既然用到了外部文件 必然要将class文件放到oracle Server的某一目录下边
public class OracleJavaProc
{
public static void main(String[] argv)
{
System out println( It s a Java Oracle procedure );
}
}
SQL> grant create any directory to scott;
授权成功
SQL> conn scott/tiger@iihero oracledb
已连接
SQL> create or replace directory test_dir as d:\oracle ;
目录已创建
SQL> create or replace java class using bfile(test_dir OracleJavaProc CLASS )
/
Java 已创建
SQL> create or replace procedure testjavaproc as language java name OracleJavaProc main(java lang String[]) ;
/
过程已创建
SQL> call testjavaproc();
调用完成
SQL> execute testjavaproc;
PL/SQL 过程已成功完成
SQL> set serveroutput on size
SQL> call dbms_java set_output( );
调用完成
SQL> execute testjavaproc;
lishixinzhi/Article/program/Oracle/201311/17720