一、概述异常分成三大类:预定义异常、非预定义异常、自定义异常处理方法分为:直接抛出异常、内部块处理异常、游标处理异常预定义异常:由PL/SQL定义的异常。由于它们已在standard包中预定义了,因此,这些预定义异常可以直接在程序中使用,而不必再定义部分声明。非预定义异常:用于处理预定义异常所不能处理的Oracle错误。自定义异常:用户自定义的异常,需要在定义部分声明后才能在可执行部分使用。用户自定义异常对应的错误不...
oracle 集合变量以及自定义异常的用法,在过程 record_practice 有record变量和自定义异常的用法实例。具体在3284行。 1CREATEORREPLACE Package Pkg_Weiyl Is 2 Pkg_Name Constant Varchar2(20) :=‘pkg_weiyl‘;3 Too_Young Constant Number :=-20001;4 Exc_Too_Young Exception;5 Pragma Exception_Init(Exc_Too_Young, -20001);6Procedure Updateaae140(Pi_Aac002 InVarchar2,7 Pi_Aae1...
ORA-12638: Credential retrieval failed 证书获取失败 原因:身份验证服务无法检索用户的凭据。Oracle帮助文档给的回复是启用跟踪来确定准确的错误。 我是在安装数据库过程中报这个错误, 网查更改数据库安装目录ORACLE_HOME/network/admin下sqlnet.ora文件SQLNET.AUTHENTICATION_SERVICES= (NTS)改成SQLNET.AUTHENTICATION_SERVICES= (NONE)即可。 AUTHENTICATION_SERVICES参数定义要使用的身份验证方法和版本。必须设置SQ...
使用ojdbc14 10.2.0.4 进行批量写入数据到oracle时,写入的字段有140个,每1000条执行一次executeBatch,日志中出现大量异常ArrayIndexOutOfBoundsException信息,具体以下:java.lang.ArrayIndexOutOfBoundsException: -32377at oracle.jdbc.driver.OraclePreparedStatement.setupBindBuffers(OraclePreparedStatement.java:2673)at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10689...
DBMS_UTILITY.FORMAT_ERROR_BACKTRACE :返回当前异常相应的描述,通过它就能知道异常的最初生成处。 系统为最近一次生成的异常设置了一个栈,并跟踪它的传递过程,而这个函数使用这个栈,然后返回该异常的整个传递过程。这个函数对错误的定位和实施下一步处理起着至关重要的作用。 DBMS_UTILITY.FORMAT_ERROR_BACKTRACE 系统为最近一次生成的异常设置了一个栈,并跟...
创建好了 虚拟机之后发现 偶尔会出现 蓝屏重启的现象, 这个时候 需要进行 异常处理 确定虚拟机已经开机之后1. 打开iscsi的连接设备, 确认 iscsi的正常连接到虚拟机的 存储设备注意 rac所有节点都需要进行处理2. 打开windows 的服务 开启几个必须要的 Oracle服务 如图示与步骤一 一样 也需要 两个节点都开启3. 在节点1 启动 Oracle的数据库具体方法见图开始运行 sqlplus / as sysdba执行 startup命令4. WorkStation 的设备总是出现各...
这是我的第一篇博客~ 2017-06-23,我所在的项目现成由于机房断电,导致项目所在的一台数据库服务器挂掉了。早上重启后发现切换Oracle用户异常,显示这个界面 初步分析是:用户还在,但是挂载有问题。 于是开始调整挂载: vim /etc/mtab 增加/dev/sda3 /media/CRM ext4 rw 0 0 vim /etc/fstab 增加/dev/sda3 /media/CRM ext4 defaults 0 0 至于这两个挂载文件的作用和关系 ------一无所知 先拿来用了 ...
【环境介绍】系统环境:linux + Oracle 11GR2 + 单机 【背景描述】业务反馈Oracle数据库连接不上,报错信息为ORA-01033错误,错误信息:该报错信息解释为数据库正在启动或者数据库关闭状态 [oracle@alllinux ~]$ oerr ora 0103301033, 00000, "ORACLE initialization or shutdown in progress"// *Cause: An attempt was made to log on while Oracle is being started up// or shutdown.// *Action: Wait a few minutes. ...
select
h.request_number, l.line_number,
msib.segment1
item_code, t.transaction_temp_id,
t.transaction_quantity,
l.quantityfrom mtl_material_transactions_temp
t,
mtl_txn_request_headers
h,
mtl_txn_request_lines
l, mtl_system_items_b
msibwhere t.move_order_header_id = h.header_id and
t.i...
--异常处理declare sNum number := 0;begin sNum := 5 / sNum; dbms_output.put_line(sNum);exception when others then dbms_output.put_line(‘is Error!‘);end; --自定义异常declare ex_custom_invaild_age exception; --自定义的异常myerr age int;begin age := &请输入年龄; if (age < 0) then raise ex_custom_invaild_age; --引发自定义异常 else dbms_output.put_line(‘...
今天在梳理服务器的信息的时候,发现有一台服务器没有设置crontab作业,一般的服务器中可能会需要一些定时的任务来触发一些备份,今天在梳理服务器的信息的时候,发现有一台服务器没有设置crontab作业,一般的服务器中可能会需要一些定时的任务来触发一些备份,清理等等工作。 因为这是一台备库机器,上面有11gR2的备库,所以首要工作就是查看是否在正常应用日志。 从日志来看,归档已经正常应用。不过似乎有一些相对陌生的操作在日志...
诡异错误!! adodb连接oracle 出错 但是用PL/SQl能正常连接Warning: ocilogon() \adodb\drivers\adodb-oci8.inc.php on line 244172.17.66.11:1521: ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SIDtnsnames.ora配置如下KFDBRAC = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.17.66.11)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = kfdbrac) )...
Oracle 删除用户时出现错误ora-01922: CASCADE must bu specified to drop 用户名
drop uer 用户名: 时出现下边错误
ora-01922: CASCADE must bu specified to drop 用户名
drop user 用户名 cascade;
注意:
drop user xx :只是删除用户
drop user xx cascade :会删除此用户名下的所有表和视图
需要登录sys 超级管理员用户select * from all_users;select * from dba_users;drop user MDSYS cascade;drop user XDB cascade...
在PL/SQL中的一个警告或错误的情形都可被称为异常。包括编译时错误(PLS)和运行时错误(ORA)。一个异常通常包含一个错误代码和错误文本,分别指示异常的编号和具体错误信息。
异常情况处理(EXCEPTION)是用来处理正常执行过程中未预料的事件,程序块的异常处理预定义的错误和自定义错误,由于PL/SQL程序块一旦产生异常而没有指出如何处理时,程序就会自动终止整个程序运行。
2、异常的分类 1. 预定义 ( Predefined )错误
...
异常处理create or replace procedure prc_get_sex (stuname student.name%type) as stusex student.sex%type; begin select sex into stusex from student where name=stuname; dbms_output.put_line(‘学生‘ || stuname || ‘的性别为:‘ || stusex); exception when too_many_rows then dbms_output.put_line(‘数据太多‘); when no_data_found then dbms_output.put_line(‘...