• It all depends on the situation.

    Stay away from Cursors if the data set is large since they are inherently slow.

    Sometimes, Extract, Translate, and Load (ETL) programmers will create a patch (update) table with the key value from table and any fields/values they want to update.

    Then, you can run a single T-SQL statement to perform the update.

    This pushes the update task away from the ETL server and onto the database server.

    However, you have to be mindful of log file growth when doing large updates.

    Doing a backup or snapshot before and after the change, changing the recovery model to simple and back to full, and performing the updates in small batches can reduce log file growth.

    In summary, it all depends ...

    Good testing of your solution is key to success!

    John Miner
    Crafty DBA
    www.craftydba.com