SQL Server Management Studio zawsze wstawia polecenie GO podczas tworzenia zapytania za pomocą menu „Skrypt jako” prawym przyciskiem myszy. Dlaczego? Co właściwie robi GO?
sql-server
tsql
ssms
tvanfosson
źródło
źródło
Odpowiedzi:
Jest to terminator partii, możesz jednak zmienić go na cokolwiek chcesz
źródło
Od Management Studio 2005 wydaje się, że można używać
GO
zint
parametrem, takim jak:Powyższe wstawi 10 wierszy do
mytable
. Ogólnie rzecz biorąc,GO
wykona pokrewne polecenia sqln
razy .źródło
Polecenie GO nie jest instrukcją języka Transact-SQL, ale specjalnym poleceniem rozpoznawanym przez kilka narzędzi MS, w tym edytor kodu SQL Server Management Studio.
Polecenie GO służy do grupowania poleceń SQL w partie, które są wysyłane razem do serwera. Polecenia zawarte w partii, to znaczy zbiór poleceń od ostatniego polecenia GO lub rozpoczęcia sesji, muszą być logicznie spójne. Na przykład nie można zdefiniować zmiennej w jednej partii, a następnie użyć jej w innej, ponieważ zakres zmiennej jest ograniczony do partii, w której została zdefiniowana.
Aby uzyskać więcej informacji, zobacz http://msdn.microsoft.com/en-us/library/ms188037.aspx .
źródło
GO
naprawdę przydatne?GO nie jest słowem kluczowym SQL.
Jest to separator partii używany przez narzędzia klienckie (takie jak SSMS) do dzielenia całego skryptu na partie
Kilkakrotnie odpowiedziałem wcześniej ... przykład 1
źródło
Aby dodać do istniejących odpowiedzi, podczas tworzenia widoków należy rozdzielić te polecenia na partie
go
, w przeciwnym razie wystąpi błąd'CREATE VIEW' must be the only statement in the batch
. Na przykład nie będzie można wykonać następującego skryptu SQL bezgo
źródło
Go oznacza, że wszelkie instrukcje SQL zapisane przed nim i po każdym wcześniejszym GO, przejdą na serwer SQL w celu przetworzenia.
W powyższym przykładzie instrukcje przed GO 1 przejdą do SQL Server w partii, a następnie wszelkie inne instrukcje przed GO 2 przejdą na serwer SQL w innej partii. Tak więc, jak widzimy, ma oddzielone partie.
źródło
Kod mówi, aby wykonać instrukcje powyżej
GO
znacznika. Moja domyślna baza danych to myDatabase, więc zamiast używaćmyDatabase GO
i wykonuje bieżące zapytanie, aby użyć herDatabaseźródło
Oto magia GO.
SKŁADNIA: Idź INT
(BatchNumber)
BatchNumber: Liczba przypadków nie wystąpiła
Wygląda prosto, może prowadzić do Spaghetti, jeśli kodujesz głębiej.
źródło