Du behöver parenteser exec (@sql)
SQL Server kommer att leta efter en lagrad procedur för namnet i @sql
variabel utan detta och klagomål Could not find stored procedure 'select x, y from z'.
Om du använder dynamisk SQL Se The Curse and Blessings of Dynamic SQL för en bra artikel om ämnet.