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

Върнете идентичността на последния вмъкнат ред от съхранена процедура

Бих казал, че трябва да използвате SCOPE_IDENTITY() като @@identity ще върне самоличността на последното вмъкнато нещо (което може да не е вашата съхранена процедура, ако множество заявки се изпълняват едновременно).

Трябва също да го ИЗБЕРЕТЕ, а не да го ВЪРНЕТЕ.

ExecuteScalar ще върне стойността на първата колона от първия ред на набор от резултати.

И така...

SELECT SCOPE_IDENTITY();

вероятно е повече от това, което искате.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Поддръжка на SQL 2008 HierarchyID в NHibernate

  2. Кога е по-добре да пишете ad hoc sql срещу съхранени процедури

  3. Как SQL Server определя реда на колоните, когато направите `SELECT *`?

  4. Защо тази заявка е бавна първия път след като стартирам услугата?

  5. Вмъкнете с обединение