從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中文網其他相關文章!