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

Стойност на първичен ключ след вмъкване на ред в SQL Server 2005

По всякакъв начин - използвайте SCOPE_IDENTITY() ако вашият ID колоната е INT IDENTITY - самоса това ще ви даде правилните резултати!

Първият подход с MAX(ID) ще се провали ужасно, ако имате множество клиенти, които вмъкват редове почти по едно и също време - ще получите обратно грешни резултати. Не използвайте това!

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

Освен това, като странична бележка:не трябва да никога използвайте sp_ като префикс! Това е префикс, запазен от Microsoft и има недостатъци по отношение на производителността - използвайте нещо друго.



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

  2. Как да върна няколко стойности в една колона (T-SQL)?

  3. openrowset за excel:можем ли да пропуснем няколко реда?

  4. Четене на XML документ, съхранен в SQL Server с текстов тип данни?

  5. Запитване за уникална стойност въз основа на съвкупността от друга стойност, докато се групира изцяло върху трета стойност