首页 新闻 会员 周边 捐助

请问下这段代码怎么错了

0
悬赏园豆:30 [已解决问题] 解决于 2010-11-27 11:09
public string Proc_test(int student_id, int class_id)
{
string str_conn= string.Format("Data Source=DADI-PC\\MYSQL2008;Initial Catalog=Test;Persist Security Info=True;User ID=sa;Password=mysql2008");
using (SqlConnection conn = new SqlConnection(str_conn))
{
conn.Open();
SqlParameter par1
= new SqlParameter("@stu_id", SqlDbType.Int);
par1.Value
= student_id;
SqlParameter par2
= new SqlParameter("@class_id", SqlDbType.Int);
par2.Value
= class_id;
SqlParameter par3
= new SqlParameter("@nun", SqlDbType.VarChar, 50);
par3.Direction
= ParameterDirection.ReturnValue;

SqlCommand cmd
= new SqlCommand("proc_test", conn);
cmd.CommandType
= CommandType.StoredProcedure;
cmd.Parameters.Add(par1);
cmd.Parameters.Add(par2);
cmd.Parameters.Add(par3);
cmd.ExecuteNonQuery();
return cmd.Parameters["@nun"].Value.ToString();
}

}

 

 

ALTER proc [dbo].[proc_test]
@stu_id
int,
@class_id
int,
@nun varchar(
50) output
as
begin
if exists( select student_str_id from Student where Student_id=@stu_id and Class_id=@class_id)
select @nun
='true';
else
select @nun
='flase';
end

 

问题补充: 过程或函数 'proc_test' 需要参数 '@nun',但未提供该参数。 你给个例子也行,就是C#调用带有返回参数的存储过程
like%'远远'%的主页 like%'远远'% | 小虾三级 | 园豆:635
提问于:2010-11-27 11:02
< >
分享
最佳答案
0

你好歹把什么错给贴出来呀

 

 

par3.Direction = ParameterDirection.ReturnValue;

这句,你用的是output参数   这里枚举用错了

收获园豆:30
写代码的小2B | 老鸟四级 |园豆:4377 | 2010-11-27 11:03
知道了,谢谢哈
like%'远远'% | 园豆:635 (小虾三级) | 2010-11-27 11:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册