我正在尝试在Oracle DB中插入一些东西,我得到:ORA-01722无效的数字

我知道当Oracle尝试将String转换为Number并失败时会发生这种情况 . 我已经阅读了许多类似的问题,但没有一个真正帮助过我 .

我设法找到了创建问题的字段,它的 Value 是:

它正在使用 org.springframework.jdbc.code.JdbcTemplate 的batchUpdate方法进行更新,并且正在插入一行: ps.setString(22, item.getDzvalue())

item.getDzvalue是 DZ40209000 ,但它被设置为的字段是NCHAR(60) .

为什么要进行任何数字转换?我有点困惑,但据我所知,NCHAR应该能够在列中取这个值 .