首页 >数据库 >mysql教程 >如何在 C# 中正确检索存储过程的返回值?

如何在 C# 中正确检索存储过程的返回值?

Barbara Streisand
Barbara Streisand原创
2025-01-05 14:47:40673浏览

How to Correctly Retrieve a Return Value from a Stored Procedure in C#?

从 C# 中的存储过程中检索返回值

在 C# 中执行返回值的存储过程时,经常会导致逻辑错误返回 null 是省略执行查询。

要执行存储过程并检索返回值,您需要添加必要的参数后使用 ExecuteNonQuery() 方法。以下代码片段演示了代码的正确版本:

SqlConnection SqlConn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["MyLocalSQLServer"].ConnectionString.ToString());
System.Data.SqlClient.SqlCommand sqlcomm = new System.Data.SqlClient.SqlCommand("Validate", SqlConn);

string returnValue = string.Empty;

try
{
    SqlConn.Open();
    sqlcomm.CommandType = CommandType.StoredProcedure;

    SqlParameter param = new SqlParameter("@a", SqlDbType.VarChar);
    param.Direction = ParameterDirection.Input;
    param.Value = Username;
    sqlcomm.Parameters.Add(param);



    SqlParameter retval = sqlcomm.Parameters.Add("@b", SqlDbType.VarChar);
    retval.Direction = ParameterDirection.ReturnValue;

    // Execute the stored procedure
    sqlcomm.ExecuteNonQuery();

    string retunvalue = (string)sqlcomm.Parameters["@b"].Value;
}
catch(Exception ex)
{
    // Handle any exceptions here
}

以上是如何在 C# 中正确检索存储过程的返回值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn