Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Dodanie max(value)+1 w nowym wierszu, czy to może być problem?

Dlaczego miałbyś używać niestandardowej Identity? pole, kiedy taki świetny jest już w SQL Server?

Po prostu użyj INT Identity (1,1) dla pola identyfikatora i będzie on automatycznie zwiększany za każdym razem, gdy wstawiany jest wiersz. Obsługuje również współbieżność znacznie lepiej niż prawie wszystko, co można zaimplementować ręcznie.

EDYTUJ:

Próbka ręcznej wartości identyfikatora:

SET IDENTITY_INSERT MyTable ON

INSERT INTO MyTable (IdField, Col1, Col2, Col3,...)
VALUES
(1234, 'Col1', 'Col2', 'Col3',...)

SET IDENTITY_INSERT MyTable OFF

Musisz dołączyć wyraźną listę pól dla INSERT .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uruchomić pakiety dtsx za pomocą wiersza poleceń?

  2. Jak skopiować tabele unikając kursorów w SQL?

  3. Przechowywać pliki w programie SQL Server czy przechowywać je na serwerze plików?

  4. Wybierz wszystkich rodziców lub dzieci w tej samej relacji tabeli SQL Server

  5. Entity Framework Code First z synonimami SQL Server