Wenn Sie keine geplante Ausfallzeit erhalten können....
Erstellen Sie zwei neue Spalten:nvarchar(max)processedflag INT DEFAULT 0
Erstellen Sie einen nicht gruppierten Index für das verarbeitete Flag
Ihnen steht UPDATE TOP zur Verfügung (Sie möchten Top nach Primärschlüssel geordnet aktualisieren).
Setzen Sie während des Updates einfach das "processedflag" auf 1, damit beim nächsten Update nur dort aktualisiert wird, wo das "processed"-Flag noch 0 ist
Sie können @@rowcount nach dem Update verwenden, um zu sehen, ob Sie eine Schleife verlassen können.
Ich schlage vor, WAITFOR nach jeder Aktualisierungsabfrage einige Sekunden lang zu verwenden, um anderen Abfragen die Möglichkeit zu geben, Sperren für die Tabelle zu erhalten und die Plattennutzung nicht zu überlasten.