Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Informacje o poleceniu GO w SQL Server

Jeśli używałeś T-SQL, prawdopodobnie znasz GO Komenda. To polecenie jest często umieszczane na końcu serii instrukcji.

Na przykład:

CREATE DATABASE Books;
GO

Jednak GO polecenie nie jest w rzeczywistości częścią T-SQL. Nie może nawet zajmować tej samej linii co instrukcja T-SQL.

GO to jedno z poleceń rozpoznawanych przez sqlcmd i osql narzędzia, a także edytor kodu SQL Server Management Studio, który ułatwia czytelność i wykonywanie wsadów i skryptów. GO polecenie sygnalizuje koniec serii instrukcji T-SQL narzędziom SQL Server.

Narzędzia SQL Server interpretują GO jako sygnał, że powinni wysłać bieżącą partię instrukcji T-SQL do instancji SQL Server. Bieżąca partia wyciągów składa się ze wszystkich wyciągów wprowadzonych od ostatniego GO , lub od początku sesji ad hoc lub skryptu, jeśli jest to pierwszy GO .

GO polecenie może być przydatne podczas pisania większych skryptów. Podczas pisania większych skryptów czasami może pojawić się błąd, ponieważ niektóre części skryptu wymagają wcześniejszego wykonania wcześniejszych części. Możesz umieścić GO w strategicznych miejscach w skrypcie, tak aby takie części były wykonywane jako pierwsze.

Oto przykład skryptu, który tworzy tabelę podzieloną na partycje. Ma GO polecenie umieszczone w różnych miejscach w skrypcie, aby upewnić się, że każda sekcja jest wykonywana przed następną sekcją.

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Połącz PowerShell i SQL Diagnostic Manager, aby zautomatyzować monitorowanie SQL Server

  2. Przykłady SQRT() w SQL Server

  3. Jak wbudować funkcjonalność RUNAS /NETONLY do programu (C#/.NET/WinForms)?

  4. Nie używaj sys.sql_dependencies w SQL Server (jest przestarzały)

  5. SHOWPLAN_ALL serwera SQL