I am having real trouble understanding where I would use this 'approach' in real-world scenarios. In my experience with SQL Server (almost 2 years now) I have not come across one situation where the GO keyword caused me trouble. I use the SQLIDE Pro from Imceda/QUEST and the only time it uses the GO keyword is to do
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
at the start and
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
at the end: I never had to use the GO keyword within a stored procedure.
Maybe I am missing something here