日期:2014-05-17  浏览次数:20723 次

存储过程问题,看看,有什么地方写的不对。谢谢各位。。。
第一次用oracle写存储过程。

表和存储过程如下:

--   创建表A
CREATE   TABLE   testA   (
f_id           numeric         NOT   NULL,
col1           varchar2(20)           NULL,  
                  col2           varchar2(40)           NULL
    );
insert   into   testA(f_id,   col1,   col2)   values(1,   'QQQQQ ',   'iw4424 ');
insert   into   testA(f_id,   col1,   col2)   values(1,   'EEEEE ',   'iieirw ');
insert   into   testA(f_id,   col1,   col2)   values(1,   'WWWWW ',   'kjsier ');

--   创建表B
    CREATE   TABLE   testB   (
f_id           numeric         NOT   NULL,
col1           varchar2(20)           NULL,  
                  col2           varchar2(40)           NULL
    );
insert   into   testB(f_id,   col1,   col2)   values(1,   'BBBB1 ',   'CCCC1 ');
insert   into   testB(f_id,   col1,   col2)   values(1,   'BBBB2 ',   'CCCC2 ');    


--   创建存储过程
create   or   replace   procedure   ora.up_getdetail(currentid   in   numeric)   as
begin
        --   创建表testA的序列
        create   sequence   seq_testA   increment   by   1   start   with   1;            
        --   创建表testB的序列
        create   sequence   seq_testB   increment   by   1   start   with   1;    
        --   创建存放表testA的临时表tempA
        CREATE   TABLE   tempA   (
                  f_id           numeric         NOT   NULL,
                  col1           varchar2(20)           NULL,  
                      col2           varchar2(40)           NULL,
                      new_id       numeric         NOT   NULL
        );

        --   创建存放表testB的临时表tempB
        CREATE   TABLE   tempB   (
                  f_id           numeric         NOT   NULL,
                  col1           varchar2(20)           NULL,