• Unrelated suggestion or correction:

    I noticed you used this statement to remove the procedure before recreating it

    if exists(select * from sysobjects where id = object_id('dbo.proc_simple') and type = 'P')

    drop procedure dbo.proc_simple

    go

    I've always been using this instead. Is what I'm doing wrong in any way?

    if object_id('dbo.proc_simple','P') is not null

    drop procedure dbo.proc_simple

    go