1,首先学习了oracle 9i pl/sql从入门到精通的第七章的第一节,并基于新建test数据库,做了些小实验
一个完整的存储过程的结构如下:
create or replace procedure procedurename is
/*在此进行变量的声明*/
begin
/*此处为执行部分*/
exception
/*此处为异常处理部分*/
end [procedurename];
create or replace procedure ss
(s1 varchar2,s2 varchar2) as
begin
update test set name=s1 where id=s2;
commit;
end ss;
执行:
begin
ss('lucy','1');
end;
create or replace procedure test1
(tin in varchar2,tout out varchar2,tinout in out varchar2)
as
ss varchar2(28);
begin
ss:=tin;
tin:='this is in parament';
tout:='this is out parament';
ss:=tout; //oracle9i不会报错,一定要在过程内部又要接受参数又要赋值的话,建议使用in out参数
ss:=tinout;
tinout:='this is in out parament';
end;
赋予用户执行过程的特权:
grant execute on procedurename to username;