在 C# 中有效檢索插入的行 ID
在進行資料庫操作時,捕獲插入行的唯一識別碼至關重要。在編寫下一段程式碼時尤其如此。然而,儘管實際 ID 具有非零值,但遇到一致的回傳值 0 可能會令人沮喪。
讓我們深入研究您面臨的問題。提供的 C# 程式碼嘗試檢索插入行的 ID,但它始終傳回 0。此行為源自於程式碼執行中的疏忽。
問題的癥結在於以下行:
雖然 ExecuteScalar 方法能夠從執行的查詢中檢索單一值,但需要注意的是,它不會自動傳回插入的行。當您嘗試使用 Convert.ToInt32 將回傳值轉換為 int 時,就會出現問題。這種轉換可能會導致不正確的轉換,從而傳回 0。
要修正這種情況,我們需要將 ExecuteScalar 替換為 ExecuteNonQuery。此函數負責執行非查詢語句,例如插入操作。成功執行插入語句後,您可以利用MySqlCommand 物件的LastInsertedId 屬性來擷取新建立的行的ID:
透過實作此調整,您可以有效取得新建立行的ID插入的行,確保無縫過渡到程式碼執行的下一階段。
以上是為什麼我的 C# 程式碼總是為插入的行 ID 回傳 0?的詳細內容。更多資訊請關注PHP中文網其他相關文章!