zoukankan      html  css  js  c++  java
  • 异常的认识

    异常就是在Oracle数据库中运行时出现的错误

    异常在PL/SQL执行过程中很可能出现

    对异常如果不进行处理,异常会中断程序的运行

    语法:

    EXCEPTION

      WHEN exception1 [OR exception2 . . .] THEN

        statement1;

        statement2;

        . . .

      [WHEN exception3 [OR exception4 . . .] THEN

        statement1;

        statement2;

        . . .]

      [WHEN OTHERS THEN

        statement1;

        statement2;

        . . .]

    捕获异常的规则

    EXCEPTION 关键词开始异常处理部分

    WHEN OTHERS 为最后的一条子句

    可以设置多个异常处理句柄

    在异常块中,只有一个句柄会处理异常

    1、预定义异常(总计21种,具体见文档)

    常用类型:

        NO_DATA_FOUND       --ORA-01403-- 未找到行

        TOO_MANY_ROWS       --ORA-01422--SELECT INTO 语句返回多行数据

        VALUE_ERROR         --ORA-06502-- 类型转换错误

        ZERO_DIVIDE         --ORA-01476-- 程序尝试除以 0

     STORAGE_ERROR       --ORA-06500--PL/SQL 运行时内存溢出或内存不足

    2、非预定义异常(EXCEPTION_INIT )

    需要在declare中申明,申明后使用即与预定义异常相同。

     

    案例1:

    declare

       emp employees%rowtype;

    begin

       select * into emp from employees where employee_id = 333;

       --异常开始捕获

       exception

       when TOO_MANY_ROWS then dbms_output.put_line('查询的条数过多啦!');

       when NO_DATA_FOUND then dbms_output.put_line('没有找到数据哦!');

       when OTHERS then dbms_output.put_line('其它错误!');

    end;

  • 相关阅读:
    N个数求和(PTA)
    集合相似度(PTA)
    方格取数(1)(状压dp入门)
    Drainage Ditches(dinic模板)
    The Accomodation of Students(二分图判断+匈牙利算法)
    Gopher II(匈牙利算法模板)
    Apple Tree(树状数组)
    node.js中的文件系统
    canvas简易画板
    canvas绘制爱心的几种方法
  • 原文地址:https://www.cnblogs.com/spdboke/p/6873009.html
Copyright © 2011-2022 走看看