第2个回答 2013-09-19
create proc proc_name @a varchar(20)asbeginselect * from table where 字段=@aend用的时候: exec proc_name '测试'说明:以上的@a代表参数,要多加几个直接用逗号连接就可以select……那一句代表sql语句,你可以在里面自由发挥,增删改查都可以
第3个回答 2013-09-19
1、 create or replace procedure pro_add_dept (dno in dept.deptno%type,name in dept.dname%type,location in dept.loc%type default 'wuxi') --参数可以有两种模式:输入(in)和输出(out)及输入输出(inout),默认为in,default提供默认值,当没有这个参数提供值时,自动使用默认值。所有的输入参数,如果没有提供默认值,则在调用过程中,必须要提供值 is begin insert into dept values(dno,name,location); exception when dup_val_on_index then dbms_output.put_line('dump primary key value'); when others then dbms_output.put_line('input correct parameters'); end; / 2、调用测试执行 1、 exec pro_add_dept(60,'instude','suzhou'); --提供正确的输入参数 2、exec pro_add_dept(60,'instude','suzhou'); --提供重复的主键值 3、exec pro_add_dept(62,'instude');--使用默认值 4、exec pro_add_dept(dno=>70,name=>’study’);--使用名字提供参数