你写的好像不是oracle的过程,倒像是sqlserver的。
CREATE PROCEDURE test (p_name char, p_age char)
 AS
begin
insert into demotable(name,age) values(p_name,p_age);
end;

解决方案 »

  1.   

    sql server还是oracle?
    怎么看也像是sql server的
      

  2.   

    语法有问题
    所以显示为Invalid了。
      

  3.   

    char(10)有錯,參數只要char 就行了.不能指明(10).
      

  4.   

    wl3721() 
    为什么改成你这样还是invalid?
      

  5.   

    oracle下过程不是那么写的.create or replace procedure test(name in varchar2,age in varchar2) as
    begin
        insert into demotable values(name,age);
        commit;
        exception 
           when others then 
              rollback;
    end ;
    --编译通过的话就不是invalid了。