• You have to be careful when using @@ROWCOUNT. Your example should work as you expect, but the example below will not...

    UPDATE .....

    SELECT @MyErr = @@ERROR

    IF @@ROWCOUNT > 1 ...

    In this situation @@ROWCOUNT will always be 1 because of the SELECT running after the update that saves the error code.

    If you need to save both the @@ERROR and @@ROWCOUNT values, use something similar to the code below. You can then refer to @MyErr and @MyCount whenever you want and always get the values from the UPDATE statement.

    UPDATE...

    SELECT @MyErr = @@ERROR, @MyCount = @@ROWCOUNT

    Original author: https://github.com/SQL-FineBuild/Common/wiki/ 1-click install and best practice configuration of SQL Server 2019, 2017 2016, 2014, 2012, 2008 R2, 2008 and 2005.

    When I give food to the poor they call me a saint. When I ask why they are poor they call me a communist - Archbishop Hélder Câmara