C# でストアド プロシージャから戻り値を取得する
この記事では、C# でストアド プロシージャから戻り値を取得する方法について説明します。
次の名前のストアド プロシージャを考えてみましょう。 "[dbo].[Validate]":
ALTER PROCEDURE [dbo].[Validate] @a varchar(50), @b varchar(50) output AS SET @Password = (SELECT Password FROM dbo.tblUser WHERE Login = @a) RETURN @b
このストアド プロシージャを実行して戻り値を取得するには、次のコードを使用できます:
using System; using System.Data; using System.Data.SqlClient; namespace StoredProcedureReturnValue { class Program { static void Main(string[] args) { // Assuming you have a connection string defined in your app config string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["MyLocalSQLServer"].ConnectionString; // Create a connection and command object using (SqlConnection SqlConn = new SqlConnection(connectionString)) using (SqlCommand sqlcomm = new SqlCommand("Validate", SqlConn)) { // Specify the stored procedure sqlcomm.CommandType = CommandType.StoredProcedure; // Add input parameters SqlParameter inputParam = new SqlParameter("@a", SqlDbType.VarChar, 50); inputParam.Value = "myUsername"; sqlcomm.Parameters.Add(inputParam); // Add an output parameter to receive the return value SqlParameter outputParam = new SqlParameter("@b", SqlDbType.VarChar, 50); outputParam.Direction = ParameterDirection.ReturnValue; sqlcomm.Parameters.Add(outputParam); // Open the connection and execute the stored procedure SqlConn.Open(); sqlcomm.ExecuteNonQuery(); // Retrieve the output value string returnValue = (string)outputParam.Value; // Do something with the return value Console.WriteLine($"Return value: {returnValue}"); } } } }
Key注意点:
以上がC# でストアド プロシージャから戻り値を取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。