sql >> Databasteknik >  >> RDS >> Sqlserver

Uppdateringsfråga på miljontals rader fyller transaktionsloggen

Till slut fungerade exemplet jag redan hade skrivit bäst; ett fullständigt transaktionsloggfel fastnar i haken och 15 minuter är tillräckligt lång för att loggen ska kunna återvinnas.

DECLARE 
    @AffectedRows int 

SET @AffectedRows = 0 

WHILE @AffectedRows < @RowsToUpdate 
BEGIN 
    BEGIN TRY 
        BEGIN TRAN 
        -- Do some updates   
        SET @AffectedRows = @AffectedRows + @@RowCount 
        COMMIT TRAN 
    END TRY 
    BEGIN CATCH 
        PRINT ERROR_MESSAGE() 
        WAITFOR DELAY '00:15:00' 
    END CATCH 
END 

PRINT @AffectedRows


  1. mysql-fråga PHP:Jag vill att ett specifikt objekt ska vara först och kan ändra frågan hur många objekt som ska visas

  2. mysqlclient installationsfel i AWS Elastic Beanstalk

  3. problem med att installera mysql python, mysqldb-modulen hittades inte i django

  4. Hur får man tillgång till databasen på en annan dator med java och jdbc och sql?