{“ ORA-06502:PL / SQL:数字或值错误:字符到数字的转换错误\ nORA-06512:在第1行”}

时间:2019-06-22 22:27:51

标签: c# oracle stored-procedures oracle-manageddataaccess

我有一个用于将存储过程错误记录到oracle数据库的文件,但是在执行存储过程时,我遇到了错误{“ ORA-06502:PL / SQL:数字或值错误:字符到数字的转换错误\ nORA-06512:在第1行“}。之前我使用的是Microsoft企业日志记录,但现在使用的是oracle.managed.dataaccess。我的代码在下面

如何解决这部分错误,(字节)0,(字节)0,(字符串)空,DataRowVersion.Default在我的新代码中?

1 个答案:

答案 0 :(得分:5)

存储过程的第一个字段定义为

abcd OUT INT

但是您将此绑定为

cmd = adapter.InputField(cmd, "abcd", logEntry.EventId, OracleDbType.Varchar2);

换句话说,abcd被定义为INT,它是一个OUTPUT参数,但是您将其绑定起来就好像它是一个字符串INPUT参数。我没有比这更进一步。返回并检查所有绑定是否与参数匹配。

好运。