0

我在生产中收到此错误消息。

不幸的是,这来自购买的应用程序,并且支持过程并不是很快。

当数据从一个表复制到另一个表时,就会发生这种情况。两个表都应该具有相同的列类型和长度。到目前为止,我已经通过执行以下操作审查了其中一些:

select distinct( length( column_name ) ) ) from source_table

然后将该值与目标表中 column_name 的长度进行比较,但这花了我很多时间。

有没有更好的方法来执行此检查?

我想确定哪一列包含长度超出源限制的数据。

我正在与:

Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.7.0 - Production
4

2 回答 2

0

用于调试此的蛮力方法:

您可以创建一个脚本,该脚本运行一个FOR循环并从表 A 到表 B 逐行插入,将行 ID 或一些相关数据输出到控制台。一旦确定了坏行,您可以尝试使用坏行中的列数据逐列更新现有行的列,直到找到罪魁祸首。

于 2009-07-28T18:10:29.447 回答
0

试试下面的链接

ORA-01438: 大于指定精度的值允许此列

于 2009-11-04T03:53:13.193 回答