>백엔드 개발 >C++ >ADO.NET을 사용하여 저장 프로시저에서 출력 매개 변수 값을 검색하는 방법은 무엇입니까?

ADO.NET을 사용하여 저장 프로시저에서 출력 매개 변수 값을 검색하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2025-01-19 06:30:10991검색

How to Retrieve Output Parameter Values from Stored Procedures using ADO.NET?

ADO.NET을 사용하여 출력 매개변수 값에 액세스

ADO.NET 저장 프로시저는 출력 매개변수를 활용하여 프로시저 실행 결과 데이터를 반환하는 경우가 많습니다. 이 가이드에서는 이러한 값을 검색하는 방법을 자세히 설명합니다.

이 프로세스에는 다음과 같은 주요 단계가 포함됩니다.

  1. SqlParameter 객체 정의: 매개변수의 이름, 데이터 유형을 지정하고 SqlParameter 속성을 ​​Direction으로 설정하여 ParameterDirection.Output 인스턴스를 만듭니다.

  2. SqlParameterSqlCommand을 추가합니다. 새로 생성된 SqlParameterSqlCommandParameters 컬렉션에 추가합니다. 이렇게 하면 저장 프로시저에서 매개변수에 액세스할 수 있습니다.

  3. 저장 프로시저 실행: SqlCommand을 실행합니다. 이 작업은 저장 프로시저에서 생성된 값으로 출력 매개변수를 업데이트합니다.

  4. 출력 값 검색: 실행 후 Value 개체의 SqlParameter 속성을 ​​통해 출력 매개 변수의 값에 액세스합니다. 검색된 값을 적절한 데이터 유형으로 캐스팅하는 것을 잊지 마세요.

예시:

<code class="language-csharp">using (SqlConnection conn = new SqlConnection(connectionString))
using (SqlCommand cmd = new SqlCommand("sproc", conn))
{
    // Define output parameter (@ID, int type)
    SqlParameter outputIdParam = new SqlParameter("@ID", SqlDbType.Int)
    {
        Direction = ParameterDirection.Output
    };

    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add(outputIdParam);

    conn.Open();
    cmd.ExecuteNonQuery();
    int id = (int)outputIdParam.Value; // Cast to int
    conn.Close();
}</code>

중요 고려 사항:

SqlDbTypeSqlParameter이 데이터베이스의 출력 매개변수 데이터 유형과 정확히 일치하는지 확인하세요. null 허용 유형(null) 또는 null 병합 연산자(int?)를 사용하여 잠재적인 ?? 값을 적절하게 처리합니다.

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.