Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Nilai Pulangan daripada Prosedur Tersimpan dalam C#?

Bagaimana untuk Mendapatkan Nilai Pulangan daripada Prosedur Tersimpan dalam C#?

Patricia Arquette
Lepaskan: 2025-01-06 02:55:39
asal
452 orang telah melayarinya

How to Retrieve Return Values from Stored Procedures in C#?

Mendapatkan Nilai Pulangan daripada Prosedur Tersimpan dalam C#

Artikel ini meneroka cara mendapatkan kembali nilai pulangan daripada prosedur tersimpan dalam C#.

Mari kita pertimbangkan prosedur tersimpan berikut yang dinamakan "[dbo].[Sahkan]":

ALTER PROCEDURE [dbo].[Validate]
@a varchar(50),
@b varchar(50) output

AS

SET @Password = 
(SELECT Password
FROM dbo.tblUser
WHERE Login = @a)

RETURN @b
Salin selepas log masuk

Untuk melaksanakan prosedur tersimpan ini dan mendapatkan semula nilai pulangan, anda boleh menggunakan kod berikut:

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}");
            }
        }
    }
}
Salin selepas log masuk

Kekunci perkara yang perlu diperhatikan:

  • Ingat untuk memanggil ExecuteNonQuery() pada Objek SqlCommand untuk melaksanakan prosedur tersimpan.
  • Arah parameter output mesti ditetapkan kepada ReturnValue untuk menerima nilai pulangan.
  • Akhir sekali, dapatkan nilai pulangan daripada sifat Nilai keluaran parameter.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai Pulangan daripada Prosedur Tersimpan dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan