ORA-04091: 表 XXX 发生了变化,触发器/函数不能读。如何获得异
点击右边红色标题查看本文完整版:ORA-04091: 表 XXX 发生了变化,触发器/函数不能读。如何获得异常类型?
ORA-04091: 表 XXX 发生了变化,触发器/函数不能读。如何获得异常类型?
这是在PROCEDURE执行中产生的异常,请问它对应的异常类型是什么?我想知道。如果知道了,就可以在异常处理里写:EXCEPTION
WHEN XXX(异常类型) THEN
------解决方法--------------------
这是 oracle 预定义异常,最近也在用,正好给你,具体如下:
CURSOR_ALREADY_OPEN ORA-6511 试图打开一个已打开的光标
DUP_VAL_ON_INDEX ORA-0001 试图破坏一个唯一性限制
INVALID_CURSOR ORA-1001 试图使用一个无效的光标
INVALID_NUMBER ORA-1722 试图对非数字值进行数字操作
LOGIN_DENIED ORA-1017 无效的用户名或者口令
NO_DATA_FOUND ORA-1403 查询未找到数据
NOT_LOGGED_ON ORA-1012 还未连接就试图数据库操作
PROGRAM_ERROR ORA-6501 内部错误
ROWTYPE_MISMATCH ORA-6504 主变量和光标的类型不兼容
STORAGE_ERROR ORA-6500 内部错误
TIMEOUT_ON_RESOURCE ORA-0051 发生超时
TOO_MANY_ROWS ORA-1422 SELECT INTD命令返回的多行
TRANSACTION_BACKED_OUT ORA-006 由于死锁提交被退回
VALUE_ERROR ORA-6502 转换或者裁剪错误
ZERO_DIVIDE ORA-1476 试图被零除