PL/SQL存储过程

2024年11月21日 PL/SQL存储过程 极客笔记

PL/SQL存储过程

PL/SQL存储过程或者简单地说是一个执行一个或多个特定任务的PL/SQL块。它与其他编程语言中的过程类似。

该过程包含一个头部和一个主体。

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

如何在过程中传递参数:

当你想要创建一个过程或函数时,你必须定义参数。在过程中有三种传递参数的方式:

  1. IN参数: IN参数可以被过程或函数引用。参数的值不能被过程或函数覆盖。
  2. OUT参数: OUT参数不能被过程或函数引用,但是参数的值可以被过程或函数覆盖。
  3. 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;

本文链接:http://so.lmcjl.com/news/18232/

展开阅读全文