oracle中使用java存贮过程

4.oracle中使用java存贮过程

 4.1 Java类
 public class Oscar {
   // return a quotation from Oscar Wilde
   public static String quote() {
     return "I can resist everything except temptation.";
   }
 }
 javac Oscar.java   //编译

 4.22 加载java类
 loadjava -user tt/bitservice Oscar.class;

 4.3 发布java类
 create or replace function oscar_quote return varchar2 AS LANGUAGE JAVA  
 NAME 'Oscar.quote() return java.lang.String';
 4.4 调用java类
 variable quote VARCHAR2(50);
 CALL oscar_quote() INTO :theQuote; 
 PRINT theQuote; 

 

具体实现如下:

1.在java source中创建如下的java类

create or replace and compile java source named Oscar as
import java.lang.*;
import java.io.*;
public class Oscar
{
  public static String entry()
  {
      return "I can resist everything except temptation.";
  }
}

2.发布java类(相当于给Java类中共用的类或方法创建一个pl/sql形式的别名,pl/sql通过该别名访问对应的java类)

 create or replace function oscar_quote return varchar2 AS LANGUAGE JAVA  
 NAME 'Oscar.quote() return java.lang.String';

3.对java类的使用

发布后的Java类(别名)可以用于pl/sql中的触发器、函数、过程、包、子程序、匿名块、单句sql。

 

 

你可能感兴趣的:(oracle)