首頁 > 後端開發 > C++ > 如何使用 ADO.NET 從預存程序中擷取輸出參數值?

如何使用 ADO.NET 從預存程序中擷取輸出參數值?

Susan Sarandon
發布: 2025-01-19 06:30:10
原創
991 人瀏覽過

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

使用 ADO.NET 存取輸出參數值

ADO.NET 預存程序通常利用輸出參數來傳回製程執行產生的資料。 本指南詳細介紹如何檢索這些值。

流程涉及以下關鍵步驟:

  1. 定義 SqlParameter 物件: 建立一個 SqlParameter 實例,指定參數的名稱、資料型,最重要的是,將其 Direction 屬性設為 ParameterDirection.Output

  2. SqlParameter 附加到 SqlCommand 將新建立的 SqlParameter 加入 SqlCommandParameters 集合中。 這使得預存程序可以存取該參數。

  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>
登入後複製

重要注意事項:

確保SqlDbType中的SqlParameter與資料庫的輸出參數資料類型精確匹配。 適當處理潛在的 null 值,可能使用可空型別 (int?) 或空合併運算子 (??)。

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板