课程表

Oracle 基础教程

Oracle 进阶教程

Oracle PL/SQL

Oracle OEM

Oracle 备份和恢复

Oracle RAC

工具箱
速查手册

PL/SQL 块

当前位置:免费教程 » 数据库/运维 » Oracle

前文已经介绍过PL/SQL,从本节开始,详细介绍PL/SQL的使用,本节介绍PL/SQL 块。

PL/SQL块是PL/SQL程序的最基本的单位,它由声明部分、执行部分和异常处理三部分组成。其中声明部分由declare开始,执行部分由begin开始,异常处理部分由exception开始。其中执行部分是必须,即begin..end之间必须要有执行部分。其他两部分可以根据实际情况选择。

PL/SQL块语法结构:

  1. [DECLARE]
  2. 声明语句...
  3. BEGIN
  4. 执行语句...
  5. [EXCEPTION]
  6. 异常处理语句...
  7. END;

语法解析:

1、声明部分是可选部分,由DECLARE开始,声明执行部分所需的变量或者常量。假如,没有用到变量或者常量可以省略。

2、执行部分是由BEGIN开始,END结束。是PL/SQL块语句的核心部分,所有的可执行的PL/SQL语句和操作变量都放在该部分。是必选的部分,不能省略。

3、异常部分是由EXCEPTION开始。主要处理执行部分过程中的执行语句或者赋值操作出现错误时,就会进入该部分。是PL/SQL程序的异常处理部分,不是必须的。

案例1、我们通过简单的PL/SQL语句块输出学生信息表中的某一位学生的基本信息。代码如下:

  1. declare
  2. xsjbxx varchar2(50);
  3. begin
  4.   select '姓名:' ||t.stuname || ' 学号:' || t.stuid || ' 年龄:' || t.age
  5.    into xsjbxx
  6.     from stuinfo t
  7.    where t.stuname = '张三';
  8.   dbms_output.put_line(xsjbxx);
  9. exception
  10.   when no_data_found  then
  11.      dbms_output.put_line('该学生在学生信息表中找不到');
  12. end;

结果如下:

1.jpg

案例2、我们通过查询一个不存在的学生信息,通过EXCEPTION进行错误信息处理。结果如下:

2.jpg

注释:

1、其中set serveroutput on 命令是打开COMMAND命令窗口中的输出流。

2、select ... into是PL/SQL程序中对SQL查询语句给变量赋值方法。是PL/SQL程序特有的赋值语句,该赋值语句只能要求SQL语句查询出来的值只有一个,假如多个或者一个都没有回抛出异常。

3、DBMS_OUTPUT.PUT_LINE是Oracle系统自带的包中的过程,用来做输出流打印,经常可以用来开发PL/SQL程序时做测试用。

转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号