sql >> Databáze >  >> RDS >> Sqlserver

Najít poslední vložený záznam MS SQL SERVER

Podle žádosti o komentář zde rychlé a špinavé ruční řešení, za předpokladu, že máte seznam INSERT příkazy (nebo odpovídající údaje) ve stejném pořadí jako vydaný INSERT s. Pro tento příklad předpokládám 1 milion záznamů.

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

Musíte jen najít poslední PK, která byla vložena. V tomto případě naštěstí jeden existuje. Začnete tedy ručně vyhledávat binární kódy v tabulce s vydáním

SELECT pk FROM myTable WHERE pk = 500000

Pokud dostanete řadu zpět, víte, že to zašlo tak daleko. Pokračujte v kontrole s pk = 750000 . Pak znovu, pokud je tam s pk = 875000 . Pokud tam není 750000, pak INSERT s musel zastavit dříve. Poté zkontrolujte pk = 675000 . Tento proces se v tomto případě zastaví po 20 krocích.

Je to jen obyčejné manuální rozdělení a panování.



  1. Přístup odepřen, když se rails připojí k Mysql

  2. Nejste to vy, to jsem já (odstraňování problémů s I/O)

  3. Posun místního časového pásma v PostgreSQL

  4. SQL:Vyberte transakce, kde řádky nejsou podle kritérií ve stejné tabulce