你能用吗
int blah = Convert.ToInt32(cmd.ExecuteScalar());
当存储过程的最后一条语句执行时:
RETURN @value
我只能让它工作,如果它:
选择@值
另外,这给了我一个对象空异常:
int blah = (int)cmd.ExecuteScalar();
Convert.toint32 和 (int) 不是同一件事,但其中一个是另一个的包装吗?
你不能。 ExecuteScalar() 方法旨在返回结果集中返回的单个值。基本上,返回第一行第一列中的值。
要获取返回值,您需要向 SQLCommand 对象添加一个参数。创建参数对象时使用名称“@RETURN_VALUE”并指定Return的参数方向。然后您可以使用 ExecuteNonQuery() 方法。
我必须注意,IMO,存储过程返回值应该简单地指示过程的状态。所有数据都应通过结果集或输出参数返回。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)