读书人

asp.net 调用存储过程的输出参数有关问

发布时间: 2012-08-11 20:50:31 作者: rapoo

asp.net 调用存储过程的输出参数问题
Parameter '@ResultNum' not found in the collection.

SQL code
CREATE DEFINER = 'root'@'localhost'PROCEDURE etm_one.P_CourseConflat(IN  P_StartCourseGuid  CHAR(36),  IN  P_EndCourseGuid   CHAR(36),  OUT ResultNum  INT)


这是调用的代码
C# code
DbParameter[] parameter = new DbParameter[]{dbHelper.CreateInDbParameter("P_StartCourseGuid",DbType.Guid,StartCourseGuid),                                     dbHelper.CreateInDbParameter("P_EndCourseGuid",DbType.Guid,EndCourseGuid),                                     dbHelper.CreateOutDbParameter("ReturnNum",DbType.Int32,result)};            dbHelper.ExecuteNonQuery(CommandType.StoredProcedure, "P_CourseConflat", parameter);            result = GetInt(parameter[2].Value);


asp.net 调用存储过程的输出参数时出现上面那个错误,网上查了下,说是mysql的问题。知道怎么解决的指教下。


[解决办法]
dbHelper.CreateOutDbParameter("ReturnNum",DbType.Int32,result)这个参数要和存储过程中的out一样,也需要显示设置为OUTPUT
[解决办法]
应该是这样的吧
dbHelper.CreateOutDbParameter("@ResultNum",DbType.Int32,result);
[解决办法]
同意楼上的说法
[解决办法]
探讨
dbHelper.CreateOutDbParameter("ReturnNum",DbType.Int32,result)这个参数要和存储过程中的out一样,也需要显示设置为OUTPUT

读书人网 >asp.net

热点推荐