比如存储过程select @result=count(*) from users where username=@username and userpass = @userpass,然后返回@result用户名和密码对的话@result>0没有的话@result=0;
然后在.cs里面
int count=cmd.ExecuteNonQuery(ConnectionString,"那个存储过程的名字",new sqlparameter[]{new sqlparameter("@username",textbox1.text),new sqlparameter("@password",textbox2.text)})
那这样的话count是=1,因为cmd.ExecuteNonQuery执行了一句存储过程.那这样存储过程返回@result这个有什么用?
然后在.cs里面
int count=cmd.ExecuteNonQuery(ConnectionString,"那个存储过程的名字",new sqlparameter[]{new sqlparameter("@username",textbox1.text),new sqlparameter("@password",textbox2.text)})
那这样的话count是=1,因为cmd.ExecuteNonQuery执行了一句存储过程.那这样存储过程返回@result这个有什么用?
说错
因为cmd.ExecuteNonQuery执行了一句sql语句
你存储过程就不能返回一个BOOL值看下,这样再来试验下
或使用output参数select @result=count(*)...
执行cmd.executeNonQuery后输出的是执行几条sql语句
那这样在存储过程里返回@result好象没什么用?
通常用来表示操作出现的各种状态,
比如操作成功,操作失败,操作进入某个分支等等!!想返回其他结果,
应该用output关键字指定传出参数
可以帮忙写下不!
谢谢了!
integer_expression返回的整数值。存储过程可向执行调用的过程或应用程序返回一个整数值。如果没有指定return的int值
所有系统存储过程均返回 0 值。此值表示成功,而非零值则表示失败