如何解决如何在DB2中查找具有DBCException:SQL错误:CharConversionExcetion的行?
我试图在表中查找行,该行似乎在单元格值中包含DBCException。 我似乎找不到一种快速的方法来找出具有此异常的唯一行。
存储在单元格中的错误:
DBCException:SQL错误:[jcc] [t4] [1065] [12306] [4.18.60]被捕获 java.io.CharConversionException。有关详细信息,请参见随附的Throwable。 ERRORCODE = -4220,SQLSTATE =空
PrimaryKey SomeColumn
1 A
2 B
3 C
4 DBCException: SQL Error...
5 DBCException: SQL Error...
在搜索时,这是我在此问题上获得一些帮助的唯一链接: https://www.ibm.com/support/pages/sqlexception-message-caught-javaiocharconversionexception-and-errorcode-4220
作为诊断,它提到要找到Hex(col)。 但是,我似乎无法缩小出现错误的行的范围,以便我可以对其进行修复。
我能够找出哪一列有错误。 我的问题是,如何缩小行数?
解决方法
我已经弄清楚了如何查询有异常的行。 因此,例外是关于无效字符,因此我们将通过以下方式缩小结果范围:
- 选择所有具有非空值的行
- 选择所有具有有效字符的行
- 减去两个数据集,您将获得包含无效字符的行。
查询:
var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value
现在,您还可以通过以下方法删除无效字符来替换受影响的行中的内容。
更新表 SET列= regexp_replace(column,'[^ a-zA-Z- \ d]','') 在哪里 ( 选择编号 ( 选择编号 从表 WHERE栏不为空 减去 选择编号 从表 其中TRANSLATE(TRANSLATE(TRANSLATE(column,'','!@#$%^&*()-= + / {} []; ::,?ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'),'','''''' ))='' AND栏不为空 ))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。