首頁 > 資料庫 > mysql教程 > 如何在 SQL 中檢索 INSERT 語句後的 Identity 值?

如何在 SQL 中檢索 INSERT 語句後的 Identity 值?

Linda Hamilton
發布: 2025-01-17 12:31:12
原創
470 人瀏覽過

How Can I Retrieve the Identity Value After an INSERT Statement in SQL?

在 SQL INSERT 語句後檢索新產生的識別值

通常,在將資料插入具有自動遞增識別列的 SQL 表後,您需要存取新產生的 ID。 OUTPUT 子句提供了一種實現此目的的便捷方法。

本指南說明了使用 OUTPUT 子句檢索身分值的兩種常見方法:

方法一:輸出到控制台(然後輸出到您的應用程式)

最簡單的方法將身分值直接輸出到控制台。 這在處理單一插入並檢索應用程式程式碼中的 ID 時非常有用:

<code class="language-sql">INSERT INTO MyTable (Name, Address, PhoneNo)
OUTPUT INSERTED.ID
VALUES ('Yatrix', '1234 Address Stuff', '1112223333');</code>
登入後複製

您的應用程式程式碼(例如,使用 ADO.NET 的 ExecuteScalar())可以擷取此單一輸出值。

方法 2:輸出到表格變數(用於多次插入或進一步處理)

對於多次插入或需要在 T-SQL 程式碼中處理產生的 ID 時,請使用表格變數作為 OUTPUT 子句的目標:

<code class="language-sql">DECLARE @OutputTbl TABLE (ID INT);

INSERT INTO MyTable (Name, Address, PhoneNo)
OUTPUT INSERTED.ID INTO @OutputTbl (ID)
VALUES ('Yatrix', '1234 Address Stuff', '1112223333');

-- Now you can access the ID(s) from @OutputTbl
SELECT ID FROM @OutputTbl;</code>
登入後複製

此方法可讓您直接在預存程序或 T-SQL 腳本中使用多個插入的 ID。 您也可以使用臨時表(#temp)甚至永久表作為輸出目標。

以上是如何在 SQL 中檢索 INSERT 語句後的 Identity 值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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