Wenn Sie T-SQL verwendet haben, werden Sie wahrscheinlich mit GO
vertraut sein Befehl. Dieser Befehl wird oft am Ende einer Reihe von Anweisungen platziert.
Zum Beispiel:
CREATE DATABASE Books;
GO
Aber das GO
Der Befehl ist nicht wirklich Teil von T-SQL. Es kann nicht einmal dieselbe Zeile wie eine T-SQL-Anweisung belegen.
GO
ist einer der Befehle, die von sqlcmd erkannt werden und osql Dienstprogramme sowie SQL Server Management Studio Code Editor, um die Lesbarkeit und Ausführung von Batches und Skripts zu erleichtern. Das GO
signalisiert das Ende eines Stapels von T-SQL-Anweisungen an die SQL Server-Dienstprogramme.
SQL Server-Dienstprogramme interpretieren GO
als Signal, dass sie den aktuellen Stapel von T-SQL-Anweisungen an eine Instanz von SQL Server senden sollen. Der aktuelle Stapel von Anweisungen besteht aus allen Anweisungen, die seit dem letzten GO
eingegeben wurden , oder seit dem Start der Ad-hoc-Sitzung oder des Skripts, wenn dies das erste GO
ist .
Das GO
Der Befehl kann praktisch sein, wenn Sie größere Skripte schreiben. Beim Schreiben größerer Skripte kann es manchmal zu einer Fehlermeldung kommen, da bestimmte Teile des Skripts erfordern, dass frühere Teile zuerst ausgeführt wurden. Sie können GO
platzieren an strategischen Stellen innerhalb des Skripts, damit solche Teile zuerst ausgeführt werden.
Hier ist ein Beispiel für ein Skript, das eine partitionierte Tabelle erstellt. Es hat den GO
Befehl, der an verschiedenen Stellen innerhalb des Skripts platziert wird, um sicherzustellen, dass jeder Abschnitt vor dem nächsten Abschnitt ausgeführt wird.
ALTER DATABASE Test
ADD FILEGROUP MoviesFg1;
GO
ALTER DATABASE Test
ADD FILEGROUP MoviesFg2;
GO
ALTER DATABASE Test
ADD FILEGROUP MoviesFg3;
GO
ALTER DATABASE Test
ADD FILEGROUP MoviesFg4;
ALTER DATABASE Test
ADD FILE
(
NAME = MoviesFg1dat,
FILENAME = '/var/opt/mssql/data/MoviesFg1dat.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
TO FILEGROUP MoviesFg1;
ALTER DATABASE Test
ADD FILE
(
NAME = MoviesFg2dat,
FILENAME = '/var/opt/mssql/data/MoviesFg2dat.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
TO FILEGROUP MoviesFg2;
GO
ALTER DATABASE Test
ADD FILE
(
NAME = MoviesFg3dat,
FILENAME = '/var/opt/mssql/data/MoviesFg3dat.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
TO FILEGROUP MoviesFg3;
GO
ALTER DATABASE Test
ADD FILE
(
NAME = MoviesFg4dat,
FILENAME = '/var/opt/mssql/data/MoviesFg4dat.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
TO FILEGROUP MoviesFg4;
GO