检查表中因转换数字类型时出现 ORA-01722:invalid number 的方法
来源:互联网 发布:mac文件夹隐藏 编辑:程序博客网 时间:2024/05/16 15:45
经常会把存放数字的字符型列转换为数字的情况,但是经常会出现 转换失败的情况,即出现ORA-01722:invalid number 错误;现在用一个函数来检测:
假设需要把第一列转换为数字型的列
select column_name1 , column_name2 ...... from test t
where trim(translate(t.column_name1,'0123456789',' ')) is not null;
这样就把那些不能转换为数字型的行找了出来;在此摘录一下 translate函数的用法:
语法:TRANSLATE(char, from, to)
用法:返回将出现在from中的每个字符替换为to中的相应字符以后的字符串。
若from比to字符串长,那么在from中比to中多出的字符将会被删除。
三个参数中有一个是空,返回值也将是空值。
SQL> SELECT TRANSLATE('2KRW229',
2 '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ',
3 '9999999999XXXXXXXXXXXXXXXXXXXXXXXXXX') AS "License"
4 FROM DUAL;
License
-------
9XXX999
某些情况下,要从一个字符串中,提取数字信息的,可以使用:
SQL> SELECT TRANSLATE('2KRW229',
2 '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ', '0123456789')
3 AS "Translate example"
4 FROM DUAL;
Tran
----
2229
- 检查表中因转换数字类型时出现 ORA-01722:invalid number 的方法
- 【问题处理】ORA-01722: invalid number (类型隐式转换)
- ORA-01722 Invalid Number
- ORA-01722 Invalid Number
- ORA-01722: invalid number
- ORA-01722 invalid number
- ora-01722:invalid number
- ORA-01722: invalid number
- ORA-01722:invalid number
- ORA-01722: invalid number
- ORACLE-012:oracle中纯数字的varchar2类型和number类型自动转换
- 一次奇怪的ORA-01722 invalid number错误
- 对ORA-01722 invalid number的误解[转]
- 实践-oracle中出现:ORA-00911: invalid character的问题
- Qt中QString与数字类型的转换方法
- .NET中连接ORACLE时出现ORA-00911: invalid character
- string,number类型转换的快捷方法
- string,number类型转换的快捷方法
- SQL Server高可用——日志传送(4-4)——后续问题补充
- WIN7 USB每次启动后都需要手动禁用再启用解决方法
- linux 内存管理 x86
- UITextField和UITextView限制字符个数的方法
- Flex之数据格式化
- 检查表中因转换数字类型时出现 ORA-01722:invalid number 的方法
- 16 款基于jQuery的图片缩放效果插件推荐
- CSS之Position属性
- 多Targets,概念
- Android 2.3 SD卡挂载流程浅析(七)
- C API 遍历 Table
- c语言实现最简单的写文件操作
- JS获取Cookie的值
- SQL— CONCAT(字符串连接函数)