📜  PL / SQL procedure

📅  最后修改于: 2020-11-12 01:54:29             🧑  作者: Mango

PL / SQL过程

PL / SQL存储过程或简称为过程是执行一个或多个特定任务的PL / SQL块。就像其他编程语言中的过程一样。

该过程包含标题和正文。

  • 标头:标头包含过程的名称以及传递给过程的参数或变量。
  • 主体:主体包含一个声明部分,执行部分和异常部分,类似于一般的PL / SQL块。

如何在过程中传递参数:

要创建过程或函数,必须定义参数。有三种方法可以在过程中传递参数:

  • IN参数: IN参数可以由过程或函数引用。该参数的值不能被过程或函数覆盖。
  • OUT参数: OUT参数不能由过程或函数引用,但参数值可以由过程或函数覆盖。
  • INOUT参数:INOUT参数可以由过程或函数和参数值来引用可通过过程或函数被覆盖。

一个过程可能会也可能不会返回任何值。

PL / SQL创建过程

创建过程的语法:

CREATE [OR REPLACE] PROCEDURE procedure_name
    [ (parameter [,parameter]) ]
IS
    [declaration_section]
BEGIN
    executable_section
[EXCEPTION
    exception_section]
END [procedure_name];

创建过程示例

在此示例中,我们将在用户表中插入记录。因此,您需要首先创建用户表。

表创建:

create table user(id number(10) primary key,name varchar2(100));

现在编写过程代码以在用户表中插入记录。

程序代码:

create or replace procedure "INSERTUSER"  
(id IN NUMBER,  
name IN VARCHAR2)  
is  
begin  
insert into user values(id,name);  
end;  
/     

输出:

Procedure created.

PL / SQL程序调用过程

让我们看一下调用上面创建的过程的代码。

BEGIN  
   insertuser(101,'Rahul');
   dbms_output.put_line('record inserted successfully');  
END;  
/  

现在,查看“ USER”表,您将看到插入一条记录。

ID Name
101 Rahul

PL / SQL删除过程

删除过程的语法

DROP PROCEDURE procedure_name; 

放置程序示例

DROP PROCEDURE pro1;