过程是一组可以按名称调用的pl/sql语句。 调用规范指定java方法或第三代语言例程,以便可以从sql和pl/sql调用它。
语法
create [or replace] procedure procedure_name
[ (parameter [,parameter]) ]
is
[declaration_section]
begin
executable_section
[exception
exception_section]
end [procedure_name];
以下是创建过程必须定义的三种类型的语句。
in
:这是一个默认参数,它将值传递给子程序。out
:必须指定,它向调用者返回一个值。in out
:必须指定,它将初始值传递给子程序并将更新的值返回给调用者。在此示例中,将在user
表中插入记录,所以需要先创建user
表。
user
表创建语句:
create table user(id number(10) primary key,name varchar2(100));
现在编写程序代码以在user
表中插入记录。
程序代码:
create or replace procedure "insertuser"
(id in number,
name in varchar2)
is
begin
insert into user values(id,name);
end;
/
执行上面代码,得到以下结果 -
procedure created.
让我们来看看如何调用上面创建的过程。参考以下示例代码 -
begin
insertuser(101,'maxsu');
dbms_output.put_line('record inserted successfully');
end;
/
现在,查看user
表中的记录,将看到上面插入了一条记录。
id name
---------------------------
101 maxsu
语法
drop procedure procedure_name;
删除示例
drop procedure insertuser;
执行上面示例代码后,将删除上面创建的过程:insertuser 。