GO
используется для разделения сценария на несколько пакетов.
Слово GO
не является оператором sql.Это понимается пакетным процессором SQL (например, SSMS), а не SQL Server.
Проще говоря, если GO
появляется в отдельной строке, SSMS отправляет каждый раздел с разделителями.GO
отдельной партией.SQL Server никогда не видит строки GO
, только SQL между ними.
Поскольку в SQL Server есть синтаксическое правило, согласно которому хранимые процедуры должны определяться в пакете самостоятельно, вы будетечасто находят сценарии создания базы данных, которые используют GO
для разделения пакетов, чтобы из одного сценария можно было создать несколько хранимых процедур.Однако это клиентское программное обеспечение, которое понимает GO
и разделяет пакеты, а не SQL-сервер.