Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Obtenha o último ID de linha inserido (com instrução SQL)


Se sua tabela do SQL Server tiver uma coluna do tipo INT IDENTITY (ou BIGINT IDENTITY ), então você pode obter o valor inserido mais recente usando:
INSERT INTO dbo.YourTable(columns....)
   VALUES(..........)

SELECT SCOPE_IDENTITY()

Isso funciona desde que você não tenha inserido outra linha - apenas retorna a última IDENTITY valor entregue neste escopo aqui.

Existem pelo menos mais duas opções - @@IDENTITY e IDENT_CURRENT - leia mais sobre como eles funcionam e de que maneira eles são diferentes (e podem dar resultados inesperados) neste excelente post de Pinal Dave aqui.