SQL Server Management Studio는 마우스 오른쪽 단추로 "다른 이름으로 스크립트"메뉴를 사용하여 쿼리를 만들 때 항상 GO 명령을 삽입합니다. 왜? GO는 실제로 무엇을합니까?
SQL Server Management Studio는 마우스 오른쪽 단추로 "다른 이름으로 스크립트"메뉴를 사용하여 쿼리를 만들 때 항상 GO 명령을 삽입합니다. 왜? GO는 실제로 무엇을합니까?
답변:
배치 종결 자이지만 원하는대로 변경할 수 있습니다.
GO 명령은 Transact-SQL 문이 아니지만 SQL Server Management Studio 코드 편집기를 비롯한 여러 MS 유틸리티에서 인식되는 특수 명령입니다.
GO 명령은 SQL 명령을 배치로 그룹화하여 서버로 함께 전송하는 데 사용됩니다. 배치에 포함 된 명령, 즉 마지막 GO 명령 또는 세션 시작 이후의 명령 세트는 논리적으로 일관성이 있어야합니다. 예를 들어 변수의 범위가 정의 된 배치로 제한되므로 한 배치에서 변수를 정의한 다음 다른 배치에서 사용할 수 없습니다.
자세한 내용은 http://msdn.microsoft.com/en-us/library/ms188037.aspx를 참조 하십시오 .
GO
실제로 배치하는 것이 유용한가?
기존 답변에 추가하기 위해보기를 만들 때을 사용하여 이러한 명령을 일괄 처리로 분리해야합니다 go
. 그렇지 않으면 오류가 발생 'CREATE VIEW' must be the only statement in the batch
합니다. 예를 들어, 다음 SQL 스크립트를 실행하지 않으면 다음과 같은 SQL 스크립트를 실행할 수 없습니다.go
create view MyView1 as
select Id,Name from table1
go
create view MyView2 as
select Id,Name from table1
go
select * from MyView1
select * from MyView2
여기 GO의 마법이 있습니다.
SELECT 'Go'
Go 10
신택스 : INT(BatchNumber)
배치 번호 : 발생 횟수 없음
더 깊이 코딩하면 스파게티로 이어질 수 있습니다 .