我用java编写了一段频繁调用oracle数据库的程序,现在想用存储过程来提高记问速度,我想请教的是,存储过程是在sql plus中创建然后在java代码中调用,还是可以将存储过程直接在java代码中创建,然后在java中调用。
我以前没有用过存储过程,请朋友们多多指教!!

解决方案 »

  1.   

    sql plus中创建然后在java代码中调用
      

  2.   

    不能把存储过程写在java代码中吗?就像写sql语句一样,如:sql="CREATE OR REPLACE PROCEDURE 过程名……"
    ,还有,如果我编写了一段存储过程我如调试它呢??
      

  3.   

    一般来讲,java中只能调用存储过程的名称及参数,你的存储过程用toad就可以调试啊
    要么你就将传进来的参数赋给常量在sqlplus中执行
    如:
    CREATE OR REPLACE procedure pr(a1 in number,a2 in number) 
    as 
    a3 number;
    begin 
    a3:=a1+a2; 
    end pr;你就可以在sqlplus中
    改写为:
    declare 
    a1 number :=1;
    a2 number :=1;
    a3 number;
    begin
    a3:=a1+a2;
    dbms_output.put_line('a3'||a3);
    end;
      

  4.   

    [Quote=引用 3 楼 watson110 的回复:]
    一般来讲,java中只能调用存储过程的名称及参数,你的存储过程用toad就可以调试啊 
    要么你就将传进来的参数赋给常量在sqlplus中执行 
    如: 
    codeCREATE OR REPLACE procedure pr(a1 in number,a2 in number) 
    as 
    a3 number;
    begin 
    a3:=a1+a2; 
    end pr;
    我想问一下,上面这段代码应该写在哪里?toad?
      

  5.   

    在pl/sql中执行或者在sqlplus中执行都可以