日期:2014-05-18 浏览次数:20922 次
DECLARE @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 @MyMsg GO
------解决方案--------------------
GO 代表一个批的结束。
------解决方案--------------------
GO是批处理的结束标志,当编译器执行到GO时会把GO前面的所有语句当成一个批处理来执行。 GO不是Transact-SQL语句,而是可被SQL Server查询分析器识别的命令。 GO命令和Transact-SQL语句不可以处在同一行上。但在GO命令行中可以包含注释。 在批处理的地一条语句后执行任何存储过程必须包含EXECUTE关键字,局部变量的作 用域限制在一个批处理中,不可以再GO命令后引用 RETURN 可在任何时候从批处理中退出,而不执行位于return之后的语句 例子: USE Sales GO --批处理结束标志 CREATE VIEW employee_info AS SELECT * FROM employ GO SELECT * FROM employee_info GO