/* 创建存储过程 create or replace procedure proc_name as begin do something; end proc_name; */ create or replace procedure updateA as begin update A set ename='DOG'; commit; end updateA; --测试 begin updateA; end; select * from A; /*创建带有输入参数的存储过程*/ create or replace procedure myproc(p_name varchar2 ,p_job varchar2 ,p_mgr number ,p_hiredate date ,p_sal number ,p_com number ,p_deptno number ,out_count out number) as begin declare v_count integer; begin select count(*) into v_count from emp; dbms_output.put_line(v_count); insert into emp values(v_count+1,p_name,p_job,p_mgr,p_hiredate,p_sal,p_com,p_deptno); select count(*) into out_count from emp; end; end myproc; --测试 declare v_out_count number; begin myproc('AAc','CLERK',1,to_date('2011-09-12','yyyy-MM-dd'),1,1,20,v_out_count); end;