熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

如何在Oracle數據庫中使用Java存儲過程

2022-06-13   來源: Oracle 

  本文以Oracle為例介紹一下java存儲過程的具體用法

  

  

  如何創建java存儲過程?

  通常有三種方法來創建java存儲過程

  

   使用Oracle的sql語句來創建

  

  eg 使用create or replace and compile java source named as

  後邊跟上java源程序要求類的方法必須是public static的才能用於存儲過程

  

  SQL> create or replace and compile java source named javademo

   as

   import javasql*;

   public class JavaDemo

   {

   public static void main(String[] argv)

   {

   Systemoutprintln(hello java demo);

   }

   }

   /

  

  Java 已創建

  

  SQL> show errors java source javademo

  沒有錯誤

  

  SQL> create or replace procedure javademo

   as

   language java name JavaDemomain(javalangString[]);

   /

  

  過程已創建

  

  SQL> set serveroutput on

  SQL> call javademo();

  

  調用完成

  

  SQL> call dbms_javaset_output();

  

  調用完成

  

  SQL> call javademo();

  hello java demo

  

  調用完成

  

  SQL> call javademo();

  hello java demo

  調用完成

  使用外部class文件來裝載創建

  eg 這裡既然用到了外部文件必然要將class文件放到oracle Server的某一目錄下邊

  

  public class OracleJavaProc

  {

  public static void main(String[] argv)

  {

  Systemoutprintln(Its a Java Oracle procedure);

  }

  }

  

  

  SQL> grant create any directory to scott;

  

  授權成功

  

  SQL> conn scott/tiger@iiherooracledb

  已連接

  SQL> create or replace directory test_dir as d:\oracle;

  

  目錄已創建

  

  SQL> create or replace java class using bfile(test_dir OracleJavaProcCLASS)

   /

  

  Java 已創建

  

  SQL> create or replace procedure testjavaproc as language java name OracleJavaProcmain(javalangString[]);

   /

  

  過程已創建

  

  SQL> call testjavaproc();

  

  調用完成

  

  SQL> execute testjavaproc;

  

  PL/SQL 過程已成功完成

  

  SQL> set serveroutput on size

  SQL> call dbms_javaset_output();

  

  調用完成

  

  SQL> execute testjavaproc;

  Its a Java Oracle procedure


From:http://tw.wingwit.com/Article/program/Oracle/201311/17720.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.