java数据源中有
private static String a;
.
.
.
public static String sum(String b)
{
  a = b + ":";
  return a;
}怎样用存储过程调用该方法?然后得到返回值
create or replace procedure test11(abc in varchar2, cba varchar2)
is
begin
  EncryptBean.sum(abc);
  cba:=EncryptBean.a;
end test11;oracle报错.....

解决方案 »

  1.   

    我会点Oracle,不知道你当时怎么解决的,可以一起学习一下。
      

  2.   

    供参考:
    实现方法: 
    1、 创建一个文件为TEST.java
    public class TEST
    {
    public static void main (String args[]) 
    {
    System.out.println("HELLO THIS iS A JAVA PROCEDURE");
    }
    }
    2、 javac TEST.java
    3、 java TEST
    4、 SQL> conn system/manager
    SQL> grant create any directory to scott;
    SQL> conn scott/tiger
    SQL> create or replace directory test_dir as 'd:\';
    目录已创建。
    SQL> create or replace java class using bfile(test_dir,'TEST.CLASS')
    2 /Java 已创建。SQL> select object_name,object_type,STATUS from user_objects;SQL> create or replace procedure test_java 
    as language java 
    name 'TEST.main(java.lang.String[])';
    /过程已创建。SQL> set serveroutput on size 5000
    SQL> call dbms_java.set_output(5000);调用完成。SQL> execute test_java;
    HELLO THIS iS A JAVA PROCEDUREPL/SQL 过程已成功完成。SQL> call test_java();
    HELLO THIS iS A JAVA PROCEDURE