网页运行后,提示“未将对象引用设置到对象的实例”,我认为问题出现在返回值的写法的问题上。
请问我要返回re的值,该如何改?
create procedure mypro
as
declare re intset @re = (select neededid from mytable2 where mytable2.intid=1)return @re //关键go cmd = new SqlCommand("mypro",conns);
cmd.CommandType = CommandType.StoredProcedure; conns.Open();
try
{
return int.Parse((cmd.ExecuteScalar().ToString()));
}
请问我要返回re的值,该如何改?
create procedure mypro
as
declare re intset @re = (select neededid from mytable2 where mytable2.intid=1)return @re //关键go cmd = new SqlCommand("mypro",conns);
cmd.CommandType = CommandType.StoredProcedure; conns.Open();
try
{
return int.Parse((cmd.ExecuteScalar().ToString()));
}
解决方案 »
- Vs2003 无法打开设计器问题。
- asp.net初学界面布局的疑惑一问,求各位大大帮忙
- System.NullReferenceException: 未将对象引用设置到对象的实例。
- VS表格的一行设置了背景图片,运行时却显示不出
- 在一个方法执行存储过程得到一个数据集,还有N个输出参数,另一个方法怎么从这个方法中得到这些数据。
- sql查询语句问题,在线等!!
- WindowsXP和Windows2003比在网站开发用途上有什么不方便之处?
- asp和xml互换(vs.net开发)
- 新闻翻页问题!高手进来
- 如何在后台程序运行过程中显示一个询问对话框,并获取起返回值?
- 求正则表达式,一次替换多个匹配
- .net 05 winform中添加Web引用 提示:无法下载*.wsdl文件 问题???大家来帮帮忙
是不是只能返回int,而且只能是一个值?
LZ 写的什么乱七八糟的
从 存储过程到C# CODE
都写的很烂
先说你的C# CODE 你都没有 传递一个 @ret 参数进去如何获取来着
ExecuteScalar 是返回 通过SMSS 直接显示的
select neededid from mytable2 where mytable2.intid=1 直接写 才用ExecuteScalar
有了返回值 就就不这样写了
应该是 SqlParameter parm=new SqlParameter ()...
然后 指定他的 ParamDirection 为 ReturnValue
create procedure mypro
as
declare re intset @re = (select neededid from mytable2 where mytable2.intid=1)return @re //关键go
这样写 也很烂select @re=neededid from mytable2 where mytable2.intid=1
然后再
return @re
declare re intdeclare @re int
@ret int output--这是带出的变量
as
declare @re int set @re = (select neededid from mytable2 where mytable2.intid=1)SET @ret=@ret go
EXEC mypro 0--调用示例,程序中给@ret个默认值(比如0)就可以了,执行完毕后,@ret就是你要的结果
create procedure mypro
as
declare @re int outputset @re = (select neededid from mytable2 where mytable2.intid=1)return @re //关键goc#代码
cmd = new SqlCommand("mypro",conns);
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter re=comm.Parameters.Add("@re",SqlDbType.Int);
re.Direction = ParameterDirection.Output; conns.Open();
try
{
cmd.ExecuteScalar().ToString();
return int.Parse(re.Value);
}
不知道可行不。