SQL Error checking in xact

Error checking in xact

USE PUBS
BEGIN TRAN
UPDATE authors 
SET state = 'FL'
WHERE state = 'KS'

IF @@ERROR <> 0 BEGIN
    ROLLBACK TRAN
    GOTO ON_ERROR
 END
UPDATE jobs 
SET  min_lvl = min_lvl - 10
IF @@ERROR <> 0 BEGIN
    ROLLBACK TRAN
    GOTO ON_ERROR
 END

COMMIT TRAN
ON_ERROR:

SELECT * FROM authors
WHERE state = 'FL'