日期:2014-05-16  浏览次数:20419 次

procedure: 一个最简单的oracle存储过程"proc_helloworld"

本文通过一个最简单的oracle存储过程"proc_helloworld"的实验,展现一下存储过程的开发和维护过程,适合超超超级初学小牛(like me)。

1.编写。编写一个最最简单的存储过程,给它起个名字叫做proc_helloworld
CREATE OR REPLACE PROCEDURE proc_helloworld
IS
BEGIN
?? DBMS_OUTPUT.put_line ('Hello World!');
END;
/

2.创建。在sqlplus命令行界面创建该存储过程
sys@ora10g> conn sec/sec
Connected.
sec@ora10g> CREATE OR REPLACE PROCEDURE proc_helloworld
? 2? IS
? 3? BEGIN
? 4???? DBMS_OUTPUT.put_line ('Hello World!');
? 5? END;
? 6? /

Procedure created.

3.运行。两种方法运行存储过程
1).需要在屏幕上显示出"DBMS_OUTPUT.put_line"的输出字符串,需要做一个小小的设置
sec@ora10g> show serveroutput
serveroutput OFF
sec@ora10g>set serveroutput on
sec@ora10g> show serveroutput
serveroutput ON SIZE 10000 FORMAT WORD_WRAPPED

2).在sqlplus命令行界面使用"EXECUTE"命令(简写做"EXEC")执行
sec@ora10g>exec proc_helloworld
Hello World!

PL/SQL procedure successfully completed.

3).在一个无名PL/SQL块内运行存储过程
BEGIN
?? proc_helloworld;
END;
/

sec@ora10g> BEGIN
? 2???? proc_helloworld;
? 3? END;
? 4? /
Hello World!

PL/SQL procedure successfully completed.

4.修改。修改一个存储过程只需要将修改好的存储过程在sqlplus界面先重新执行一下即可,因为在创建过程中使用的是"CREATE OR REPLACE PROCEDURE",也就是说如果没有就创建,如果已经存在了这个存储过程,就替换它
CREATE OR REPLACE PROCEDURE proc_helloworld
IS
BEGIN
?? DBMS_OUTPUT.put_line ('Hello World! '||chr(10)||'I am a Happy DBA Secooler!');
END;
/