CREATE OR REPLACE PROCEDURE update_insert (
pid in int,pdocid in int,
pperson in CHAR,pmsg IN CHAR
)
as
begin
begin
update diekiss set doc_id = pdocid,person=pperson,message=pmsg where id = pid;
if SQL%NOTFOUND then
insert into diekiss values(pid,pdocid,pperson,pmsg);
end if;
commit;
end;
end update_insert;

解决方案 »

  1.   

    用用PLSQL Developer 比较好用得 写过程很方便得。
      

  2.   

    最簡單的例子
    不帶參數
    create or replace procedure pt1
    is
    begin
    null;
    end;create or replace procedure pt2 ( a  in  varchar2, b out varchar2)
    is
    begin
    b:=a;
    end;create or replace procedure pt3
    is
       c  varchar2;
    begin
      c:=pt2('a');
    end;帶參數
      

  3.   

    跟sqlserver差不多,只要你熟悉了语法就可以了
    create or replace procedure pro_insert is
    begin
      for i in 1..10000 loop
       insert into testtab values(3,3,'jjj');
     end loop;
    end pro_insert;调用时:exec pro_insert;
      

  4.   

    你在第二个begin前加上
    declare 回车试试
      

  5.   

    返回参数要当心,加入只有一条记录返回可以用out,如果有很多记录的话就要用到游标了