.net – SQL0469 IN,OUT或INOUT对过程中的参数2无效
发布时间:2021-01-24 22:28:06 所属栏目:MsSql教程 来源:网络整理
导读:我正在尝试针对运行AS400的IBM iSeries运行存储过程,并在我的标题中出现上述错误. 当我键入以下内容以从System iNavigator工具执行存储过程时,它运行正常: CALL QS36F.HH189P('1','1','') 第一个参数方向在存储过程中定义为输入,第二个输出和第三个参数作
我正在尝试针对运行AS400的IBM iSeries运行存储过程,并在我的标题中出现上述错误. 当我键入以下内容以从System iNavigator工具执行存储过程时,它运行正常: CALL QS36F.HH189P('1','1','') 第一个参数方向在存储过程中定义为输入,第二个输出和第三个参数作为输出. 问题是当我尝试从设置参数的.Net代码运行存储过程时.有人可以帮帮我吗? 我的参数列表设置如下: DB2Command.Parameters.Add("P_STRRRN",iDB2DbType.iDB2Char,10); DB2Command.Parameters["P_STRRRN"].Direction = System.Data.ParameterDirection.Input; DB2Command.Parameters["P_STRRRN"].Value = strRRN; DB2Command.Parameters.Add("P_LSTRRN",10); DB2Command.Parameters["P_LSTRRN"].Value = string.Empty; DB2Command.Parameters["P_LSTRRN"].Direction = System.Data.ParameterDirection.Output; DB2Command.Parameters.Add("P_ERRMSG",70); DB2Command.Parameters["P_ERRMSG"].Value = string.Empty; DB2Command.Parameters["P_ERRMSG"].Direction = System.Data.ParameterDirection.Output; 解析度 必须将commandtext声明如下: string cmdtextstring = "CALL QS36F.HH189P" + "('" + strRRN + "',?,?)"; 必须设置如下参数: DB2Command.Parameters.Add("P_LSTRRN",70); DB2Command.Parameters["P_ERRMSG"].Value = string.Empty; 解决方法如果您将parms作为字符串常量传递,那么OUT或INOUT值将返回到何处? DB2期望您以一种可以将值返回到变量中的方式调用该过程.(编辑:PHP编程网 - 黄冈站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |