簡體   English   中英

檢索最后插入的GUID

[英]Retrieve last inserted GUID

在ASP.NET中加載頁面時,我需要最后插入的行GUID 我嘗試使用存儲過程,但是在插入時,我正在如何在頁面加載過程中使用該值,如下所示:

USE [emp]
GO
/****** Object:  StoredProcedure [dbo].[procTestTableInsert]    Script Date: 3/12/2014 5:55:33 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER PROCEDURE [dbo].[procTestTableInsert]
(
    @name varchar(50)
)
AS
    DECLARE @id uniqueidentifier

SELECT @id = NEWID()-- Get a new unique identifier to insert

INSERT 
    testTable1(id,name)
VALUES
    (@id,@name)

SELECT @id  

exec procTestTableInsert sree

根據這個問題, 最好的方法來獲得插入行的身份? 您應該能夠查詢IDENT_CURRENT

從MSDN文檔中:

A.返回為指定表生成的最后一個標識值下面的示例返回AdventureWorks2012數據庫中為Person.Address表生成的最后一個標識值。

USE AdventureWorks2012; 
GO
SELECT IDENT_CURRENT ('Person.Address') AS Current_Identity;
GO

注意:這假定您的GUID是行ID。 如果不是行ID,則無法使用。 在這種情況下,建議您將最后一個ID存儲在SQL的臨時表中(更新存儲的proc以保存guid),或者讓應用程序將其緩存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM