在oracle中,可以使用“CREATE PROCEDURE”语句来创建存储过程,基本语法“CREATE [OR REPLACE] PROCEDURE 过程名 [参数列表] IS […] BEGIN … END [过程名];”。
本教程操作环境:Windows7系统、Oracle 11g版、Dell G3电脑。
什么是存储过程?
所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中。
在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数来调用并执行它,从而完成一个或一系列的数据库操作。
oracle创建存储过程
语法
CREATE [OR REPLACE] PROCEDURE 过程名 [ (参数 [,参数]) ] IS [declaration_section] BEGIN executable_section [EXCEPTION exception_section] END [过程名];
以下是创建过程必须定义的三种类型的语句。
-
IN
:这是一个默认参数,它将值传递给子程序。 -
OUT
:必须指定,它向调用者返回一个值。 -
IN OUT
:必须指定,它将初始值传递给子程序并将更新的值返回给调用者。
Oracle创建过程示例
在此示例中,将在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.
Oracle程序调用过程
让我们来看看如何调用上面创建的过程。参考以下示例代码 –
BEGIN insertuser(101,'Maxsu'); dbms_output.put_line('record inserted successfully'); END; /
现在,查看USER表中的记录,将看到上面插入了一条记录。
ID Name --------------------------- 101 Maxsu
推荐教程:《Oracle教程》