10.2 在SQL*Plus中创建存储过程
本节将介绍如何在SQL*Plus中创建存储过程,其中包括无参数存储过程的创建以及各类有参数存储过程的创建,同时讲述如何查看、执行存储过程等操作。
10.2.1 创建第一个存储过程
前面已经学习过创建存储过程的语法,下面就利用前面学习过的语法在SQL*Plus中创建第一个存储过程,如示例1所示。
【示例1】创建第一个存储过程
在SQL*Plus中执行如下脚本:
01 CREATE PROCEDURE TEST
02 AS
03 BEGIN
04 DBMS_OUTPUT.PUT_LINE('我的第一个过程!');
05 END;
06 /
【代码解析】
❑第1行表示创建过程,名为TEST。
❑第4行表示输出一行字符串“我的第一个过程!”。
示例1是最简单的一个示例,通过它可以直观地认识存储过程的创建过程。如果创建成功,会出现如下提示:
过程已创建
到目前为止,只是成功创建了过程,接下来执行该存储过程,查看输出结果。
【执行效果】
(1)SERVEROUTPUT设置
在SQL*Plus中如果想让DBMS_OUTPUT.PUT_LINE成功输出,需要把SERVEROUTPUT选项设置成ON状态。默认情况下,它是OFF状态的。如果不了解该属性的当前设置状态,可以执行如下语句进行查看:
SHOW SERVEROUTPUT
如果提示如下字样则表示该属性没有打开:
serveroutput OFF
接下来打开输出设置,运行下面的脚本:
SET SERVEROUTPUT ON
设置成功会出现下面的提示:
serveroutput ON SIZE UNLIMITED FORMAT WORD_WRAPPED
(2)执行存储过程
在SQL*Plus中输入如下语句,用于执行已经创建的存储过程:
BEGIN
TEST;
END;
执行成功后会输出该过程中的输出语句。整个流程如图10.1所示。
图 10.1 存储过程的创建及执行
技巧 还可以通过在关键词EXEC后面加上存储过程名来执行已经存在的存储过程。