117.Oracle数据库SQL开发之 PLSQL编程——异常

117.Oracle数据库SQL开发之 PLSQL编程——异常

欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50086941

异常用于处理PL/SQL代码块中出现的运行时错误。

常见的异常如下:

1.  ZERO_DIVIDE 异常

ZERO_DIVIDE异常在试图用一个数字除以零的时候发生。

执行如下:

store@PDB1> BEGIN

   DBMS_OUTPUT.PUT_LINE(1/0);

    EXCEPTION

    WHENZERO_DIVIDE THEN

   DBMS_OUTPUT.PUT_LINE('Division by zero');

    END;

    /

Division by zero

 

PL/SQL procedure successfully completed.

当异常发生时,程序的控制权将转交给EXCEPTION块,其中的WHEN子句复制检查与何种异常相匹配,然后执行匹配子句中的代码。

2.  DUP_VAL_ON_INDEX异常

如果视图向具有唯一性索引约束的列中插入重复的值,就会引发DUP_VAL_ON_INDEX异常。

例如:

store@PDB1>BEGIN

    INSERT INTO customers(customer_id,first_name,last_name) values ( 1,'Greg','Green');

    EXCEPTION

    WHEN DUP_VAL_ON_INDEX THEN

    DBMS_OUTPUT.PUT_LINE('Duplicate value on anindex');

    END;

    /

Duplicate valueon an index

 

PL/SQL proceduresuccessfully completed.

3.  INVALID_NUMBER异常

当试图将无效的字符串转换成数字时,就会引发INVALID_NUMBER异常。

例如:

store@PDB1> BEGIN

    INSERT INTOcustomers ( customer_id,first_name,last_name) VALUES ('123x','Greg','Green');

    EXCEPTION

    WHENINVALID_NUMBER THEN

   DBMS_OUTPUT.PUT_LINE('Conversion of string to number failed');

    END;

    /

Conversion of string to number failed

 

PL/SQL procedure successfully completed.

4.  OTHERS异常

OTHERS异常可以处理所有异常。

例如:

store@PDB1> BEGIN

   DBMS_OUTPUT.PUT_LINE(1/0);

    EXCEPTION

    WHEN OTHERSTHEN

   DBMS_OUTPUT.PUT_LINE('An exception occurred');

    END;

    /

An exception occurred

 

PL/SQL procedure successfully completed.

因为OTHERS可处理所有的异常,因此必须在EXCEPTION块中所有特定的异常之后使用该异常。如果试图在其他地方使用OTHERS异常,数据库会返回错误PLS-00370。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PL/SQLOracle数据库编程语言,用于编写存储过程、触发器、函数等数据库对象。下面是配置Oracle数据库以使用PL/SQL的步骤: 1. 安装Oracle数据库:首先需要下载并安装Oracle数据库软件。可以从Oracle官方网站下载适合您操作系统的版本,并按照安装向导进行安装。 2. 创建数据库实例:安装完成后,使用Database Configuration Assistant(DBCA)工具创建一个新的数据库实例。在创建过程中,可以设置数据库名称、监听器配置等。 3. 连接数据库:使用SQL*Plus或其他数据库客户端工具连接到已创建的数据库实例。可以使用以下命令连接数据库: ``` sqlplus username/password@database ``` 4. 创建用户:在连接数据库后,可以使用以下命令创建一个新用户: ``` CREATE USER username IDENTIFIED BY password; ``` 5. 授予权限:为了使用PL/SQL,需要为新用户授予适当的权限。可以使用以下命令授予用户访问数据库对象的权限: ``` GRANT CONNECT, RESOURCE, CREATE SESSION TO username; ``` 6. 创建PL/SQL对象:现在可以开始编写和创建PL/SQL对象,如存储过程、触发器、函数等。可以使用SQL*Plus或其他支持PL/SQL的集成开发环境(IDE)进行编写和执行。 7. 执行PL/SQL对象:使用SQL*Plus或其他支持PL/SQL的工具执行已创建的PL/SQL对象。可以使用以下命令执行存储过程: ``` EXECUTE procedure_name; ``` 以上是配置Oracle数据库以使用PL/SQL的基本步骤。请注意,具体的配置步骤可能会因Oracle数据库版本和操作系统而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值