> 백엔드 개발 > C++ > C#의 SQL Server 저장 프로시저에서 출력 매개 변수를 검색하는 방법은 무엇입니까?

C#의 SQL Server 저장 프로시저에서 출력 매개 변수를 검색하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2025-01-10 11:16:41
원래의
790명이 탐색했습니다.

How to Retrieve Output Parameters from SQL Server Stored Procedures in C#?

C#에서 저장 프로시저 출력 매개변수 사용

SQL Server 저장 프로시저에서 데이터를 검색할 때 C# 코드로 저장 프로시저의 출력 매개변수에 액세스해야 하는 경우가 많습니다. 그러나 이를 효과적으로 수행하는 방법을 이해하는 것은 어려울 수 있습니다.

새 레코드를 usp_InsertContract 테이블에 삽입하고 할당된 기본 키를 출력 매개변수로 반환하는 Contracts이라는 저장 프로시저를 생각해 보세요.

<code class="language-sql">CREATE PROCEDURE usp_InsertContract
    @ContractNumber varchar(7),
    @NewId int OUTPUT
AS
BEGIN
    INSERT into [dbo].[Contracts] (ContractNumber)
        VALUES (@ContractNumber)
    Select @NewId = Id From [dbo].[Contracts] where ContractNumber = @ContractNumber
END</code>
로그인 후 복사

C#에서 이 저장 프로시저를 실행하려면 다음 코드 조각을 사용할 수 있습니다.

<code class="language-csharp">using System.Data;
using System.Data.SqlClient;

public class StoredProcedureOutputParameterExample
{
    public static void Main()
    {
        // 定义连接字符串并初始化连接。
        string connectionString = "Server=localhost;Database=MyDatabase;User Id=sa;Password=mypassword;";
        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            // 创建命令对象。
            using (SqlCommand command = new SqlCommand("usp_InsertContract", connection))
            {
                // 将命令类型设置为StoredProcedure。
                command.CommandType = CommandType.StoredProcedure;

                // 向命令添加输入参数。
                command.Parameters.Add(new SqlParameter("@ContractNumber", SqlDbType.VarChar, 7) { Value = "ABC123" });

                // 向命令添加输出参数。
                SqlParameter newIdParameter = new SqlParameter("@NewId", SqlDbType.Int) { Direction = ParameterDirection.Output };
                command.Parameters.Add(newIdParameter);

                // 打开连接并执行命令。
                connection.Open();
                command.ExecuteNonQuery();

                // 检索输出参数值。
                int newId = (int)newIdParameter.Value;

                // 使用输出参数值。
                Console.WriteLine($"New ID: {newId}");
            }
        }
    }
}</code>
로그인 후 복사

이 코드 조각에서 SqlConnectionSqlCommand 개체는 데이터베이스에 대한 연결을 설정하고 저장 프로시저를 실행하는 데 사용됩니다. 입력 매개변수 @ContractNumber를 명령에 추가하고 출력 매개변수 @NewId를 생성한 후 Direction 속성을 ​​ParameterDirection.Output로 설정합니다.

저장 프로시저를 실행한 후 매개변수의 Value 속성을 ​​사용하여 출력 매개변수 값을 검색할 수 있습니다. 그런 다음 검색된 값을 C# 코드에서 사용할 수 있습니다.

이러한 단계를 수행하면 C# 코드의 저장 프로시저 출력 매개 변수를 효과적으로 사용하여 SQL Server 저장 프로시저에서 데이터를 검색할 수 있습니다.

위 내용은 C#의 SQL Server 저장 프로시저에서 출력 매개 변수를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿