Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Вземете последния вмъкнат идентификатор на ред (с SQL израз)

Ако вашата таблица на SQL Server има колона от тип INT IDENTITY (или BIGINT IDENTITY ), след което можете да получите най-новата вмъкната стойност, като използвате:

INSERT INTO dbo.YourTable(columns....)
   VALUES(..........)

SELECT SCOPE_IDENTITY()

Това работи, стига да не сте вмъкнали друг ред - просто връща последния IDENTITY стойност, раздадена в този обхват тук.

Има поне още две опции - @@IDENTITY и IDENT_CURRENT - прочетете повече за това как работят и по какъв начин са различни (и може да ви дадат неочаквани резултати) в тази отлична публикация в блога на Pinal Dave тук.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да върна множество набори от резултати със SqlCommand?

  2. Задайте двойки ключ/стойност в контекста на сесията в SQL Server (sp_set_session_context)

  3. Как да намерите съпоставянето в SQL Server (T-SQL)

  4. Как да добавя свойството на идентичност към съществуваща колона в SQL Server

  5. MS SQL Server на Linux срещу тест за производителност на Windows, за да забележите разликата