• In this case I would have both the Dynamic SQL stored proc and non dynamic stored proc.

    Compare both the execution plans. Also checking statistics (SET STATISTICS IO ON) and clearing before executing each stored proc.

    It seems your manager really wants assurance and was burnt in the past. I would add some a @debug paramter to the dynamic stored proc. If @debug=1 then print the statement and do not execute. This way it makes it easier for a dev to see what is going on. I use this all the time if I am doing dynamic SQL.

    If you see huge gains by using dynamic sql and allow for easy debugging your boss might be happy. It is worth a try. I think you will be surprised at the results.