查找错误原因[22001] [IBM] [AS]变量或参数* N上的转换错误

时间:2019-01-25 13:44:52

标签: db2 ibm-midrange

我正在从C#调用过程,并收到以下错误消息:

ERROR [22001] [IBM][AS] Conversion error on variable or parameter *N

有没有办法让DB2告诉我哪个参数是无法转换的?

DB2的加分项可以告诉我它尝试从哪种类型获取数据。

1 个答案:

答案 0 :(得分:1)

由于此错误似乎来自您的SQL过程,因此最简单的方法是从绿屏环境中调用此过程以获取更多调试数据。您可以先从STRSQL实用程序内部调用此过程,然后再从hit F1 on the error message调用此过程,有时您会获得比通过OLEDB传回的错误消息更多的详细信息。

如果您具有SQL过程的源代码,则可以use the STRDBG utility to step through the SQL source code并查看其错误所在的行,并且可以在引发错误之前检查局部变量的值。这通常是找到问题所在的最彻底的方法。 Debugging an SQL routine

在一个编写良好的过程中,这种错误通常意味着“垃圾进,垃圾出”,您应该首先检查输入,但是也可能是SQL代码无法正确处理完美有效的输入,从而导致输入错误。该过程。