存储过程返回值不能正常工作
本文关键字:工作 常工作 返回值 不能 存储过程 | 更新日期: 2023-09-27 18:04:12
似乎不能让这个工作。
SqlConnection sqlConnection1 = new SqlConnection(WebConfigurationManager.ConnectionStrings["connectionstring"].ConnectionString);
SqlCommand cmd = new SqlCommand();
sqlConnection1.Open();
cmd.CommandText = "sp_wth";
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter retval = cmd.Parameters.Add("@b", SqlDbType.VarChar);
retval.Direction = ParameterDirection.ReturnValue;
cmd.Connection = sqlConnection1;
cmd.ExecuteNonQuery();
string returnvalue = (string)cmd.Parameters["@b"].Value;
lblStatusMessage.Text = returnvalue;
SqlConnection con = new SqlConnection("connection string");
con.Open();
SqlCommand cmd = new SqlCommand("exec sp_wth", con);
cmd.Parameters.Add(new SqlParameter("@b", value));
cmd.ExecuteNonQuery();
con.Close();
检查ParameterDirection。是ReturnValue
还是Output
?
ParameterDirection。Output:该参数是一个输出参数
例子:
CREATE PROCEDURE TestSP
@b varchar(50) OUTPUT,
...
ParameterDirection。ReturnValue:参数表示操作(如存储过程、内置函数或用户定义函数)的返回值。
CREATE PROCEDURE TestSP
@b varchar(50)
...
return @b