存取 SQL Server 中新插入的 GUID 主鍵
SQL Server 的 SCOPE_IDENTITY()
函數會擷取最後插入的識別值,但這不適合 GUID 主鍵。 OUTPUT
子句提供了用於擷取新產生的 GUID 的強大解決方案。
以下是取得最近插入的 GUID 的方法:
表格建立(GUID 主鍵):
<code class="language-sql">CREATE TABLE dbo.GuidPk ( ColGuid uniqueidentifier NOT NULL DEFAULT NEWSEQUENTIALID(), Col2 int NOT NULL )</code>
使用輸出進行 GUID 擷取插入:
<code class="language-sql">DECLARE @op TABLE ( ColGuid uniqueidentifier ) INSERT INTO dbo.GuidPk (Col2) OUTPUT inserted.ColGuid INTO @op VALUES (1)</code>
這會插入一筆記錄,讓 SQL Server 產生 GUID。 OUTPUT
子句將產生的 ColGuid
重新導向到 @op
表變數。
驗證:
<code class="language-sql">SELECT * FROM @op; -- Shows the newly inserted GUID SELECT * FROM dbo.GuidPk; -- Confirms the record in the table</code>
OUTPUT
子句可以有效地檢索插入的 GUID,即使同時進行多個插入也是如此。 此方法可確保準確檢索新產生的主鍵。
以上是如何在SQL Server中檢索最近插入的GUID主鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!