Hvis du ikke kan få planlagt nedetid...
opret to nye kolonner:nvarchar(max)processedflag INT DEFAULT 0
Opret et ikke-klynget indeks på det behandlede flag
Du har UPDATE TOP tilgængelig for dig (du vil opdatere toppen sorteret efter den primære nøgle).
Du skal blot indstille processedflaget til 1 under opdateringen, så den næste opdatering kun opdateres, hvor det behandlede flag stadig er 0
Du kan bruge @@rowcount efter opdateringen for at se, om du kan afslutte en loop.
Jeg foreslår, at du bruger WAITFOR i et par sekunder efter hver opdateringsforespørgsel for at give andre forespørgsler en chance for at få låse på bordet og ikke overbelaste diskbrug.