Validar errores en Transact SQL Server 2000

Problema: Procesar los errores cuando inserto o actualizo datos en una tabla
Solución: Usar el @@ERROR Cuando creo los SPs de actualización o inserción de datos realizo, más o menos, lo siguiente:

CREATE PROCEDURE sp_ejemplo
        @param1 integer,
        @param2 integer
AS

BEGIN TRANSACTION --Inicia la transacción
        
        --La sentencia de actualización o inserción
        update tabla
        set campo1 = @param1
        from tabla
        where campo2 = @param2
       
        IF @@ERROR != 0 --Chequeo la variable @@ERROR
        BEGIN
                ROLLBACK TRANSACTION --Reversa la transacción si hay error
                RETURN
        END
        ELSE
        BEGIN
                COMMIT TRANSACTION --Si está correcto, al final, ejecuta la transacción
                RETURN
        END
GO