最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Oracle错误:ORA-06592 Case Not Found问题解决办
时间:2022-06-29 09:54:12 编辑:袖梨 来源:一聚教程网
在Oracle 10g中,通过触发器在两个数据库之间传递数据,但是程序中总是抛出如下错误:
ORA-01438: value larger than specified precision allowed for this column
提示某一列精度不对,但是却没有提示出是那一列,经过仔细检查,始终没有发现问题原因,于是尝试直接在PL/SQL中执行一次插入命令,看看触发器是否正常工作,但是这次依然不成功,报错ORA-06592, 提示缺少CASE。
经过不断的搜索,终于在网上找到了解决办法,CASE语句中添加上ELSE语句即可。
CASE
WHEN ...
ELSE
NULL;
END CASE;
修改触发器之后,从PLSQL中插入成功,又试了一下通过此程序插入,竟然也成功了!
简单case语句与搜索式case语句的异同
--相同点:两者都用于根据不同的条件,来执行与之对应的语句或完成特定的任务,甚至某些情况下可以互换替换。
--不同点:
--简单case语句提供一个selector选择器,且EXPRESSION的数据类型一定与selector的数据类型匹配,否则报错。
--搜索case语句没有selector选择器,且when子句之后得到的结果一定是一个布尔型值(NULL,TRUR,FALSE)
不知道之间有什么关联,对Oracle没什么研究,就此记录一下,以后遇到类似问题以便解决。
相关文章
- 人们熟悉的寄居蟹属于以下哪种分类 神奇海洋11月21日答案 11-21
- 第五人格11.22共研服有什么更新 11月22日共研服更新内容介绍 11-21
- 原神恰斯卡怎么培养 11-21
- 无期迷途四星装束是谁 11-21
- 王者荣耀帝丹高中校服怎么获得 11-21
- 光遇姆明季后续版本怎么玩 11-21