• So basically a single transaction and then check @@Error after each statement as in...

    BEGIN TRAN

    UPDATE

    IF @@ERROR <> 0 GOTO ERR_HANDLER

    DELETE

    IF @@ERROR <> 0 GOTO ERR_HANDLER

    DESTROY WORLD

    IF @@ERROR <> 0 GOTO ERR_HANDLER

    INSERT

    IF @@ERROR <> 0 GOTO ERR_HANDLER

    COMMIT TRAN

    RETURN 0

    ERR_HANDLER:

    KILL KENNY

    ROLLBACK

    RETURN 1