CREATE OR REPLACE PROCEDURE DEV.InsertIntoJH
(
  device_nbr  in   jh.device_nbr%type ,
  station_name in  jh.station_name%type
)
as
begin
insert into dev.jh values(device_nbr,station_name);
end;
/

解决方案 »

  1.   

    非常感谢  wxmwxmwxm(毛毛毛毛) 的答案。
    不过参数默认就为 in
    我也试着改了下,不过还是出现同样的错误,请哪个帮我看看。
    我在其它的版面上也看到了这个问题,好像也没有给出满意的答案。
    继续关注中...........................
      

  2.   

    --exec InsertIntoJH ('12345678','110kV测试变电站');
    --应该是sqlserver中的语法begin
    InsertIntoJH ('12345678','110kV测试变电站');
    end;
      

  3.   

    如果是SQL/PLUS下就可用exec 过程名(参数).当然也可用BEGIN 过程名(参数) END;
      

  4.   

    以下是SQL/PLUS中执行的结果:SQL> begin
      2  exec InsertIntoJH('12344','500kV青龙变电站');
      3  end;
      4  /
    exec InsertIntoJH('12344','500kV青龙变电站');
         *
    ERROR 位于第 2 行:
    ORA-06550: 第 2 行, 第 6 列:
    PLS-00103: 出现符号 "InsertIntoJH"在需要下列之一时:
    := . ( @
    % ;
    符号 ":=" 被替换为 "InsertIntoJH" 后继续。感谢 icedut(冰) 的关注,你提出的方法我已经试过。
    我还等着把这个问题解决了,好继续下一步。
    请高手帮我解答一下,继续关注中.....................
      

  5.   

    我用toad
    --
    create table jh
    (
      device_nbr char(20),
      station_name varchar2(20) 
    )--
    CREATE OR REPLACE PROCEDURE InsertIntoJH
    (
      device_nbr     jh.device_nbr%type ,
      station_name   jh.station_name%type
    )
    as
    begin
    insert into jh values(device_nbr,station_name);
    end;--
    begin
    InsertIntoJH ('12345678','110kV测试变电站');
    end;--没有错误
      

  6.   

    sql-plus中执行
    InsertIntoJH ('12345678','110kV测试变电站');
    --也没有错误阿
      

  7.   

    不知道为什么,昨天调试了一下午,还是不正确。
    难道是我的人品有问题,最后还是感谢icedut(冰)的解答。