首頁 > 資料庫 > mysql教程 > 在SQL Server中插入多筆記錄後如何有效率地檢索Identity值?

在SQL Server中插入多筆記錄後如何有效率地檢索Identity值?

DDD
發布: 2025-01-04 22:44:42
原創
840 人瀏覽過

How Can I Efficiently Retrieve Identity Values After Inserting Multiple Records in SQL Server?

插入多筆記錄並擷取識別值

在資料表中插入多筆記錄時,您可能會遇到需要擷取每個插入記錄產生的識別值的情況。在這種情況下,如果您要將表 B 中的記錄插入表 A 中並希望取得插入記錄的識別值,則有一個解決方案可以消除對遊標的需要。

在 SQL Server 2005 中,您可以利用 OUTPUT 子句來完成此任務。 OUTPUT 子句可讓您指定一個表變量,該變數將接收 INSERT 語句的輸出,包括新插入行的識別值。

以下是一個範例:

DECLARE @output TABLE (id int)

INSERT INTO A (fname, lname)
OUTPUT INSERTED.ID INTO @output
SELECT fname, lname
FROM B
登入後複製

透過使用 OUTPUT 子句,您可以使用插入記錄的識別值填入名為「@output」的表格變數。然後,您可以查詢此表變數來檢索值:

SELECT *
FROM @output
登入後複製

這種方法可讓您有效率地插入多筆記錄並取得它們的識別值,而無需訴諸遊標或其他查詢。

以上是在SQL Server中插入多筆記錄後如何有效率地檢索Identity值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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