首頁 >後端開發 >C++ >如何從 ADO.NET 中的預存程序檢索輸出參數值?

如何從 ADO.NET 中的預存程序檢索輸出參數值?

Barbara Streisand
Barbara Streisand原創
2025-01-19 06:54:16333瀏覽

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

存取 ADO.NET 中的輸出參數值

本指南示範如何輕鬆地從 ADO.NET 中的預存程序檢索輸出參數值。 過程涉及以下關鍵步驟:

  1. 定義輸出參數: 建立一個 SqlParameter 對象,將其 Direction 屬性設為 ParameterDirection.Output。 確保參數的名稱和資料類型 (SqlDbType) 與預存程序中定義的名稱和資料類型(例如 @ID INT OUT)精確匹配。

  2. 加入到指令參數:將此 SqlParameter 物件加入到 Parameters 物件的 SqlCommand 集合中。

  3. 執行預存程序:使用SqlCommand.ExecuteNonQuery()執行預存程序。

  4. 擷取輸出值:執行後,使用 Value 物件的 SqlParameter 屬性存取輸出參數的值。 請記住將檢索到的值轉換為正確的資料類型以防止錯誤。

這是一個說明此過程的實際程式碼範例:

<code class="language-csharp">// Assuming a stored procedure 'sproc' with an output parameter '@ID'
// and a connection string 'connectionString'

using (SqlConnection conn = new SqlConnection(connectionString))
using (SqlCommand cmd = new SqlCommand("sproc", conn))
{
    SqlParameter outputParam = new SqlParameter("@ID", SqlDbType.Int) { Direction = ParameterDirection.Output };
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add(outputParam);

    conn.Open();
    cmd.ExecuteNonQuery();

    int retrievedId = (int)outputParam.Value; //Retrieve and cast the output integer value

    conn.Close();
}</code>

可以從 SqlParameter 物件本身輕鬆取得輸出值。 確保 SqlParameter 中的資料類型與預存程序的輸出參數定義匹配至關重要。 檢索期間準確的資料類型轉換對於避免異常至關重要。

以上是如何從 ADO.NET 中的預存程序檢索輸出參數值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn