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

Намерете последния въведен запис MS SQL SERVER

Според искането за коментар тук бързо и мръсно ръчно решение, ако приемем, че имате списъка с INSERT изрази (или съответните данни) в същата последователност като издадения INSERT с. За този пример предполагам 1 милион записа.

INSERT ... VALUES (1, ...)
...
INSERT ... VALUES (250000, ...)
...
INSERT ... VALUES (500000, ...)
...
INSERT ... VALUES (750000, ...)
...
INSERT ... VALUES (1000000, ...)

Просто трябва да намерите последния PK, който е бил вмъкнат. За щастие в случая има такъв. Така че започвате да извършвате ръчно двоично търсене в издаващата таблица

SELECT pk FROM myTable WHERE pk = 500000

Ако върнете спор, знаете, че е стигнало толкова далеч. Продължете да проверявате с pk = 750000 . След това отново, ако е там с pk = 875000 . Ако 750000 не е там, тогава INSERT трябва да са спрели по-рано. След това проверете за pk = 675000 . Този процес спира в този случай след 20 стъпки.

Това е просто ръчно разделяй и владей.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Преобразуването на тип данни datetime2 в тип данни smalldatetime доведе до стойност извън диапазона.\r\nИнструкцията е прекратена

  2. Масово вмъкване на полета с фиксирана ширина

  3. Как работи функцията REPLICATE() в SQL Server (T-SQL)

  4. Извършете обединяване, ако съществува таблица с тези имена

  5. база данни:първичен ключ, клъстер или неклъстер