|
|
1
3
如果你想的话 验证 在pl/sql中将varchar2字段作为数字,通常您只需尝试将其转换为数字并捕获异常。
您还可以在代码中间嵌套一个begin..end块,以便捕获异常,如果这样更适合您:
|
|
|
2
3
无法捕获无效数字异常的原因是您将输入参数声明为数字。当您调用函数时,oracle首先尝试将字符串转换为数字(当然,它失败了, 在输入你的代码之前 )中。 如果将输入参数更改为varchar2,那么将在函数内部完成到数字的转换(在本例中是隐式的),并且可以根据需要捕获和处理无效的数字(这里我只是返回一个不同的字符串来表示问题):
用法示例:
输出:
|
|
|
3
0
解决方案:
|
|
|
vytaute · 返回表类型时Oracle函数中的类型错误 4 年前 |
|
|
BetaRide · Oracle架构用户无法在过程中创建表 8 年前 |
|
|
F.donoso · 嵌套的隐式游标未在数据中清除 8 年前 |
|
|
ADH · 如何在网格中调用过程和输出结果 8 年前 |