oracle10g- oracle 存储过程的应用
存储过程
create [or replace ] procedure procedurename
[(parm1[{in|out|in out}])]param1_type
[,(param2[{int|out|in out}])]param2_type
...
is|as
...
begin
procedurebody;
end;
/
例子
--************
create or repalce procedure myproc
(inname in varchar2)--不能设置大小
is
name varchar2(10);
begin
select name into innname from t1 where id=1;
dbms_output.put_line("name : "||name);
end myproc;
/
--**************
如果要是创建的有错误 可以用 show errors来查看
更准确的方法 show errors procedure myproc
执行过程
declare
tname varchar2(10);
begin
tname:='gege';
myproc(tname);
end;
/
****
begin
myproc('gege');
end;
/
****
execute myproc('sss');
这种方式 不能放在begin end 块中
--***********************
create or replace procedure myproc
(id number,name out varchar2)
begin
select name into name from t1 where id=id;
end;
/.
调用方法
declare
tid number;
tname varchar2(10);
begin
tid:=10;
myproc(tid,tname);
dbms_output.put_line(tname);
end;
/