The @ automatic variable returns the error code of the last Transact-SQL statement.
If there was no error, @ returns zero.
Because @ is reset after each Transact-SQL statement, it must be saved to a variable if it is needed to process it further after checking it.