T-SQL 關鍵字 GO

來源:互聯網
上載者:User
ZT
記錄下
Transact-SQL 參考

GO

用訊號通知 Microsoft SQL Server 公用程式一批 Transact-SQL 陳述式的結束。

文法

GO

注釋

GO 不是 Transact-SQL 陳述式;而是可為 osqlisql 工具 + 生產力及 SQL Server 查詢分析器識別的命令。

SQL Server 公用程式將 GO 解釋為應將當前的 Transact-SQL 批處理語句發送給 SQL Server 的訊號。當前批處理語句是自上一 GO 命令後輸入的所有語句,若是第一條 GO 命令,則是從特殊會話或指令碼的開始處到這條 GO 命令之間的所有語句。SQL 查詢分析器和 osqlisql 命令提示工具 + 生產力執行 GO 命令的方式不同。有關更多資訊,請參見 osql 工具 + 生產力、isql 工具 + 生產力和 SQL 查詢分析器。

GO 命令和Transact-SQL 陳述式不可在同一行上。但在 GO 命令列中可包含注釋。

使用者必須遵照使用批處理的規則。例如,在批處理中的第一條語句後執行任何預存程序必須包含 EXECUTE 關鍵字。局部(使用者定義)變數的範圍限制在一個批處理中,不可在 GO 命令後引用。

USE pubsGODECLARE @MyMsg VARCHAR(50)SELECT @MyMsg = 'Hello, World.'GO -- @MyMsg is not valid after this GO ends the batch.-- Yields an error because @MyMsg not declared in this batch.PRINT @MyMsgGOSELECT @@VERSION;-- Yields an error: Must be EXEC sp_who if not first statement in-- batch.sp_whoGO

SQL Server 應用程式可將多條 Transact-SQL 陳述式作為一個批處理髮給 SQL Server 去執行。在此批處理中的語句編譯成一個執行計畫。程式員在 SQL Server 公用程式中執行特定語句,或產生 Transact-SQL 陳述式指令碼在 SQL Server 公用程式中運行,用 GO 來標識批處理的結束。

如果基於 DB-Library、ODBC 或 OLE DB APIs 的應用程式試圖執行 GO 命令時會收到語法錯誤。SQL Server 公用程式永遠不會向伺服器發送 GO 命令。

許可權

GO 是一個不需許可權的工具 + 生產力命令。可以由任何使用者執行。

樣本

下面的樣本建立兩個批處理。第一個批處理只包含一條 USE pubs 語句,用於設定資料庫上下文。剩下的語句使用了一個局部變數,因此所有的局部變數聲明必須在一個批處理中。這一點可通過在最後一條引用此變數的語句之後才使用 GO 命令來做到。

USE pubsGODECLARE @NmbrAuthors intSELECT @NmbrAuthors = COUNT(*)FROM authorsPRINT 'The number of authors as of ' +CAST(GETDATE() AS char(20)) + ' is ' +CAST(@NmbrAuthors AS char (10))GO
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.