一个简单的例子:
createor replace and compile java source named "hello_sp"as
packageorg.bromon.oracle;
publicclass Hello
{
public static String say(String name)
{
return "你好,"+name;
}
}
Java程序已创建。
create or replace function hello_sp(namevarchar2) return varchar2
as language java name
'org.bromon.oracle.Hello.say(java.lang.String) return java.lang.String';
函数已创建。
现在可以调用该函数,执行:
select hello_sp('bromon') from dual;
public static String say()
{
return "你好”;
}
函数名不应该有扩号:hello_sp,否则会报告函数有编译错误。
启动enterprise manage console,在“方案”下找到“源类型”,右击”Java类”,选择”加载Java“,选择对应的class文件即可。
1. 使用oracle的sql语句来创建:
使用create or replace and compile java source named“<name>” as
后边跟上java源程序。要求类的方法必须是public static的,才能用于 存储过程。
SQL>
create or replace and compile java source named"javademo1“
as
importjava.sql.*;
public class JavaDemo1 {
public static void main(String[] args)
{
System.out.println("hello,java demo1");
}
}
/
Java 已创建。
SQL> show errors java source "javademo1"
没有错误。
SQL>
create or replace procedure javademo1
as
language java name ''JavaDemo1.main(java.lang.String[])'';
/
过程已创建。
SQL> set serveroutput on
SQL> call javademo1();
SQL> set serveroutput on size 5000
SQL> call dbms_java.set_output(5000);
调用完成。
SQL> execute javademo1;
hello, java demo1
SQL>conn scott/tiger
已连接。
SQL>createor replace directory test_diras ''d:\oracle'';
目录已创建。
SQL>
create or replacejava class using bfile(test_dir,
“OracleJavaProc.CLASS'')
/
Java 已创建。
SQL> create or replace procedure testjavaproc as language javaname ''OracleJavaProc.main(java.lang.String[])'';
/
过程已创建。
SQL> call testjavaproc();
调用完成。
SQL> execute testjavaproc;
PL/SQL 过程已成功完成。
SQL> set serveroutput on size 5000
SQL> call dbms_java.set_output(5000);
调用完成。
SQL> execute testjavaproc;
It''s a Java Oracle procedure